добрый день уважаемые.
есть фрибс 6.2, на нем (из основного): exim, clam, postgresql, spamassassin (с bayes в постгресе), apacheс недавнего времени стал замечать таймауты при проверке на спам из ексима.
задумался...
посмотрел vmstat, и понял что затык на винте. параметр b до 15-20 доходит.
база bayes ~900Mb (в общем то не много).
средняя скорость поступления сообщений на exim ~20 в минуту (тоже не много)вот что говорит diskinfo
diskinfo -c /dev/ad0
/dev/ad0
512 # sectorsize
61492838400 # mediasize in bytes (57G)
120103200 # mediasize in sectors
119150 # Cylinders according to firmware.
16 # Heads according to firmware.
63 # Sectors according to firmware.I/O command overhead:
time to read 10MB block 4.429599 sec = 0.216 msec/sector
time to read 20480 sectors 115.109551 sec = 5.621 msec/sector
calculated command overhead = 5.404 msec/sector
вот atacontrolatacontrol mode ad0
current mode = UDMA100
smart вот что говоритsmartctl -a /dev/ad0
smartctl version 5.37 [i386-portbld-freebsd6.2] Copyright (C) 2002-6 Bruce Allen
Home page is http://smartmontools.sourceforge.net/=== START OF INFORMATION SECTION ===
Model Family: Maxtor DiamondMax Plus 9 family
Device Model: Maxtor 6Y060L0
Serial Number: Y2TGEMQE
Firmware Version: YAR41BW0
User Capacity: 61,492,838,400 bytes
Device is: In smartctl database [for details use: -P show]
ATA Version is: 7
ATA Standard is: ATA/ATAPI-7 T13 1532D revision 0
Local Time is: Sat Aug 18 10:04:45 2007 MSD
SMART support is: Available - device has SMART capability.
SMART support is: Enabled=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSEDGeneral SMART Values:
Offline data collection status: (0x00) Offline data collection activity
was never started.
Auto Offline Data Collection: Disabled.
Self-test execution status: ( 243) Self-test routine in progress...
30% of test remaining.
Total time to complete Offline
data collection: ( 181) seconds.
Offline data collection
capabilities: (0x5b) SMART execute Offline immediate.
Auto Offline data collection on/off support.
Suspend Offline collection upon new
command.
Offline surface scan supported.
Self-test supported.
No Conveyance Self-test supported.
Selective Self-test supported.
SMART capabilities: (0x0003) Saves SMART data before entering
power-saving mode.
Supports SMART auto save timer.
Error logging capability: (0x01) Error logging supported.
No General Purpose Logging support.
Short self-test routine
recommended polling time: ( 2) minutes.
Extended self-test routine
recommended polling time: ( 32) minutes.SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
3 Spin_Up_Time 0x0027 224 224 063 Pre-fail Always - 3123
4 Start_Stop_Count 0x0032 253 253 000 Old_age Always - 26
5 Reallocated_Sector_Ct 0x0033 253 253 063 Pre-fail Always - 0
6 Read_Channel_Margin 0x0001 253 253 100 Pre-fail Offline - 0
7 Seek_Error_Rate 0x000a 253 098 000 Old_age Always - 0
8 Seek_Time_Performance 0x0027 247 242 187 Pre-fail Always - 45404
9 Power_On_Minutes 0x0032 182 182 000 Old_age Always - 809h+29m
10 Spin_Retry_Count 0x002b 253 252 157 Pre-fail Always - 0
11 Calibration_Retry_Count 0x002b 253 252 223 Pre-fail Always - 0
12 Power_Cycle_Count 0x0032 253 253 000 Old_age Always - 94
192 Power-Off_Retract_Count 0x0032 253 253 000 Old_age Always - 0
193 Load_Cycle_Count 0x0032 253 253 000 Old_age Always - 0
194 Temperature_Celsius 0x0032 253 253 000 Old_age Always - 48
195 Hardware_ECC_Recovered 0x000a 253 252 000 Old_age Always - 5026
196 Reallocated_Event_Count 0x0008 253 253 000 Old_age Offline - 0
197 Current_Pending_Sector 0x0008 253 253 000 Old_age Offline - 0
198 Offline_Uncorrectable 0x0008 253 253 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x0008 199 199 000 Old_age Offline - 0
200 Multi_Zone_Error_Rate 0x000a 253 252 000 Old_age Always - 0
201 Soft_Read_Error_Rate 0x000a 253 001 000 Old_age Always - 9
202 TA_Increase_Count 0x000a 253 252 000 Old_age Always - 0
203 Run_Out_Cancel 0x000b 253 252 180 Pre-fail Always - 1
204 Shock_Count_Write_Opern 0x000a 253 252 000 Old_age Always - 0
205 Shock_Rate_Write_Opern 0x000a 253 252 000 Old_age Always - 0
207 Spin_High_Current 0x002a 253 252 000 Old_age Always - 0
208 Spin_Buzz 0x002a 253 252 000 Old_age Always - 0
209 Offline_Seek_Performnce 0x0024 193 193 000 Old_age Offline - 0
99 Unknown_Attribute 0x0004 253 253 000 Old_age Offline - 0
100 Unknown_Attribute 0x0004 253 253 000 Old_age Offline - 0
101 Unknown_Attribute 0x0004 253 253 000 Old_age Offline - 0SMART Error Log Version: 1
No Errors Loggedmount
/dev/ad0s1a on / (ufs, local, noatime)
devfs on /dev (devfs, local)
/dev/ad0s1e on /tmp (ufs, local, noatime, soft-updates)
/dev/ad0s1f on /usr (ufs, local, noatime, soft-updates)
/dev/ad0s1d on /var (ufs, local, noatime, soft-updates)
fdescfs on /dev/fd (fdescfs)
df -h
Filesystem Size Used Avail Capacity Mounted on
/dev/ad0s1a 496M 61M 395M 13% /
devfs 1.0K 1.0K 0B 100% /dev
/dev/ad0s1e 496M 7.5M 449M 2% /tmp
/dev/ad0s1f 53G 3.7G 45G 8% /usr
/dev/ad0s1d 1.2G 584M 537M 52% /var
fdescfs 1.0K 1.0K 0B 100% /dev/fd
ps: async делать не хочу :)
>=== START OF INFORMATION SECTION ===
>Model Family: Maxtor DiamondMax Plus 9 family# diskinfo -c /dev/da0
/dev/da0
512 # sectorsize
36703934464 # mediasize in bytes (34G)
71687372 # mediasize in sectors
4462 # Cylinders according to firmware.
255 # Heads according to firmware.
63 # Sectors according to firmware.I/O command overhead:
time to read 10MB block 0.204496 sec = 0.010 msec/sector
time to read 20480 sectors 2.860629 sec = 0.140 msec/sector
calculated command overhead = 0.130 msec/sector# diskinfo -c /dev/da1
/dev/da1
512 # sectorsize
36778545152 # mediasize in bytes (34G)
71833096 # mediasize in sectors
4471 # Cylinders according to firmware.
255 # Heads according to firmware.
63 # Sectors according to firmware.I/O command overhead:
time to read 10MB block 0.163460 sec = 0.008 msec/sector
time to read 20480 sectors 2.396356 sec = 0.117 msec/sector
calculated command overhead = 0.109 msec/sector# diskinfo -c /dev/da2
/dev/da2
512 # sectorsize
18351959040 # mediasize in bytes (17G)
35843670 # mediasize in sectors
2231 # Cylinders according to firmware.
255 # Heads according to firmware.
63 # Sectors according to firmware.I/O command overhead:
time to read 10MB block 0.302858 sec = 0.015 msec/sector
time to read 20480 sectors 4.331888 sec = 0.212 msec/sector
calculated command overhead = 0.197 msec/sector# uname
FreeBSD 6.2примерно так...
оно робит как веб-(апач+php+perl+tomcat)-мэйл(sendmail+cyrus-imap+clamd+spamassassin)-фтп(proftpd)-серверэто, видимо, к вопросу IDE vs SCSI via FreeBSD
ничего личного... статистикой поделился просто
>это, видимо, к вопросу IDE vs SCSI via FreeBSD
>ничего личного... статистикой поделился простопока возможности переехать нету. я бы и сам рад.
исследуя дисковые операции по процессам, понял, что весь затык на чтении из базы байеса постгресом.
так как чтение происходит намного чаще записи, планирую использовать gmirror для raid1.
поэкспериментирую с параметром balance (load, round-robin или split)думаю поможет.