powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Высокий IO wait
25 сообщений из 90, страница 3 из 4
Высокий IO wait
    #38458594
oustkast
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
nedba
3) bloated table - возможно, что у вас данные давно не оптимальны на диске.

По поводу tbloat , примерно раз в месяц запускаю команду CLUSTER на проблемные таблицы, так что с этим тоже должно быть всё ок.
...
Рейтинг: 0 / 0
Высокий IO wait
    #38472837
oustkast
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И так.. с новыми настройками система работает более менее стабильно и колом не вставала, load больше 4-х не поднимался, но почему-то по прежнему уходит в swap .

Пожалуйста помогите разобраться в чем тут может быть дело и что ещё в конфиге подкрутить, совсем вырубать swap не хочется.

config:
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
max_connections = 250
shared_buffers = 16GB
temp_buffers = 16MB
work_mem = 32MB
maintenance_work_mem = 2GB
max_stack_depth = 6MB
wal_buffers = 18MB
checkpoint_segments = 30
checkpoint_timeout = 30min
checkpoint_warning = 30s
effective_cache_size = 48GB



meminfo:
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
MemTotal:       74375964 kB
MemFree:          680872 kB
Buffers:          343976 kB
Cached:         70114640 kB
SwapCached:        31296 kB
Active:         48982688 kB
Inactive:       22185068 kB
Active(anon):   17319472 kB
Inactive(anon):   489300 kB
Active(file):   31663216 kB
Inactive(file): 21695768 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:       7811064 kB
SwapFree:        7701880 kB
Dirty:              4824 kB
Writeback:             8 kB
AnonPages:        679544 kB
Mapped:         15371796 kB
Shmem:          17099668 kB
Slab:            1153504 kB
SReclaimable:    1124372 kB
SUnreclaim:        29132 kB
KernelStack:        2160 kB
PageTables:      1091496 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:    44999044 kB
Committed_AS:   18453708 kB
VmallocTotal:   34359738367 kB
VmallocUsed:      291180 kB
VmallocChunk:   34317170176 kB
HardwareCorrupted:     0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:        6384 kB
DirectMap2M:     2080768 kB
DirectMap1G:    73400320 kB



load average: 0.38, 0.31, 0.30

SWAP 109184k used
...
Рейтинг: 0 / 0
Высокий IO wait
    #38473405
nedba
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Самый плохой случай: ((8 воркеров Х 2Гб) + 48 + 16) и еще (32+16+6 на каждый коннект Х 250) Итого 70Гб + 13,5Гб максимум на что рассчитывает постгрес.

По факту, пиковых нагрузок на пределе возможностей нет, по тому в своп попали системные либы (скорее всего экзотическая аутентификация, ненужные драйвера и т.д.).

1) Используйте pgbouncer. (тогда разгрузите shared)
2) Постепенно снижайте все параметры (по одному за раз), пока не упретесь в проседания.
...
Рейтинг: 0 / 0
Высокий IO wait
    #38474035
oustkast
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
nedba,

Ну понятно, спасибо!
...
Рейтинг: 0 / 0
Высокий IO wait
    #38483885
oustkast
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
.. и снова привет!

В общем с очередным большим наплывом посетителей ситуация начала повторяться, но уже в другом ракурсе:

резко, в течении 20 секунд, на базу пришло порядком 100 запросов:
Код: html
1.
2.
3.
2013-11-27 15:24:46 EET LOG:  connection received: host=x.x.x.x port=60408
2013-11-27 15:24:46 EET LOG:  connection received: host=x.x.x.x port=35294
...


что привело к тормозам:

Код: html
1.
2.
3.
4.
5.
6.
2013-11-27 15:24:49 EET LOG:  duration: 3484.295 ms  execute S_2: COMMIT
2013-11-27 15:24:49 EET LOG:  duration: 3482.354 ms  execute S_2: COMMIT
2013-11-27 15:24:49 EET LOG:  duration: 3479.254 ms  execute S_2: COMMIT
2013-11-27 15:24:49 EET LOG:  duration: 3476.793 ms  execute S_2: COMMIT
2013-11-27 15:24:49 EET LOG:  duration: 3426.473 ms  execute S_2: COMMIT
...


и, как следствие, к переполнению слотов:

Код: html
1.
2013-11-27 15:24:58 EET FATAL:  remaining connection slots are reserved for non-replication superuser connections



В отличии от прошлых перегрузок, load average теперь остаётся в норме.

Пожалуйста посоветуйте, что ещё можно тут предпринять во избежание переполнения слотов ?

Крутить конфиг или взяться за железо и добавить RAM-памяти ? Поможет ли добавление памяти как-то ускорить переработку запросов или же просто даст возможность увеличить "max_connections" ?
...
Рейтинг: 0 / 0
Высокий IO wait
    #38483895
Фотография Misha Tyurin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
oustkast,

авторрезко, в течении 20 секунд, на базу пришло порядком 100 запросов

какие запросы? где планы?

20 секунд, 100 запросов - это ваще-то оч мало запросов
...
Рейтинг: 0 / 0
Высокий IO wait
    #38483957
oustkast
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Misha Tyurin,

Не совсем понял вопроса, explain analyze запросов предоставить ) ? Просто запросы бегут постоянно одни и те же, нету каких-либо особенных или сверхтяжелых.
...
Рейтинг: 0 / 0
Высокий IO wait
    #38484021
Фотография Misha Tyurin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
oustkast,

explain analyze buffers
...
Рейтинг: 0 / 0
Высокий IO wait
    #38505020
oustkast
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Misha TyurinЕще. Весь кеш рейд контроллера отдайте на запись.

И уменьшить упреждающее чтение хорошо через blockdev, если у вас много конкурентных индекссканов.

Вот такие общие замечания могут быть.

Кешь рэйда настраивается только через биос ?
...
Рейтинг: 0 / 0
Высокий IO wait
    #38505130
oustkast
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уменьшил shared_buffers до 8GB , но всё равно система не стабильна. В данный момент на ресурсе пик нагрузки по трафику и база данных прекрасно со всем справляется, но утром (08:30-35 график подтверждает), когда трафик не был ещё таким большим она встала на пару минут колом.

Кажется, что с распределением памяти (swap pagein?) что-то не того, может кто увидит ключ к разгадке ?






...
Рейтинг: 0 / 0
Высокий IO wait
    #38505419
Фотография Ёш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
oustkast, а почему Вы swap не отключаете?
...
Рейтинг: 0 / 0
Высокий IO wait
    #38505455
oustkast
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ёш,

Да стрёмно в продакшене совсем без свапа, вруг системе памяти не хватит и база отвалится ?
...
Рейтинг: 0 / 0
Высокий IO wait
    #38505467
Фотография Misha Tyurin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
oustkast,

авторshared_buffers до 8GB - OK

у вас же видно !явно, что дело в свапе. убирите его и всё. линукс работает с памятью и свапом оч специфически. свап вам не нужен. сделайте небольшой ворк мем. контролируетйе кол-во запущенных процессов через пгбоунсер. у вас памяти вагоны совбодной, всё под кеш. так что убирите свап, и всё будет совсем хорошо
...
Рейтинг: 0 / 0
Высокий IO wait
    #38505478
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
oustkastЁш,

Да стрёмно в продакшене совсем без свапа, вруг системе памяти не хватит и база отвалится ?

для начала попробуйте vm.swappiness = 1
если еще не сделали....
скорее всего поможет
...
Рейтинг: 0 / 0
Высокий IO wait
    #38505494
Фотография Misha Tyurin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
oustkast,

авторсделайте небольшой ворк мем
сделайте 16MB. и поставте логгироваться врменые файлы.
18.8.3. What To Log
http://www.postgresql.org/docs/9.3/static/runtime-config-logging.html
log_temp_files (integer)
A value of zero logs all temporary file information

если они будут появляться, то 1) увеличивайте ворк мем для всего сервера на немного или
2) увеличивайте ворк мем только для тех транзакций, где надо, прямо через команды set local work_mem
...
Рейтинг: 0 / 0
Высокий IO wait
    #38505515
Фотография Misha Tyurin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
oustkast,

по вашим картинкам у вас диски ТОЛЬКО СВАП обслуживают (база вся в где-то в памяти у вас).

а далее возможны такие варианты

1) в этот свап попадает что-то нужное пг (часть какого-то индекса, например)

2) диски не справляются под нагрузкой свопа (что врятли, но возможно, покажите графики иопс/латенси),
а пг что-то делает с дисками синхронно, например, транзакции коммитятся синхронно.

ИТОГО. убирайте свап.
я за вариант сразу swapoff -a // при условии, что вы поработаете с воркмемом

ну и можно пробывать вариант Максима vm.swappiness = 1 и/или другие еще настрйоки vm. мне из vm помогали когда-то только настройки ридахеда. как раз на ядре 2.6.32 при планировщике NOOP. а vm.swappiness = 1 - не помогало, свап продожал что-то делать.
...
Рейтинг: 0 / 0
Высокий IO wait
    #38505555
oustkast
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
графики иопс/латенси:






С work_mem экспериментировать пока не буду, т.к заказаны дополнительные 72 GB ram-памяти и придут они уже в начале года.

А скажите, vm.swappiness = 1 можно поменять на лету (sysctl -p) без каких-либо рисков ? Сейчас значение> vm.swappiness = 60
...
Рейтинг: 0 / 0
Высокий IO wait
    #38505564
oustkast
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
Smart Array P410i in Slot 0 (Embedded)
   Bus Interface: PCI
   Slot: 0
   Serial Number: 5**
   Cache Serial Number: PA**
   RAID 6 (ADG) Status: Disabled
   Controller Status: OK
   Hardware Revision: Rev C
   Firmware Version: 5.70
   Rebuild Priority: Medium
   Expand Priority: Medium
   Surface Scan Delay: 15 secs
   Surface Scan Mode: Idle
   Queue Depth: Automatic
   Monitor and Performance Delay: 60 min
   Elevator Sort: Enabled
   Degraded Performance Optimization: Disabled
   Inconsistency Repair Policy: Disabled
   Wait for Cache Room: Disabled
   Surface Analysis Inconsistency Notification: Disabled
   Post Prompt Timeout: 0 secs
   Cache Board Present: True
   Cache Status: OK
   Accelerator Ratio: 25% Read / 75% Write
   Drive Write Cache: Disabled
   Total Cache Size: 512 MB
   No-Battery Write Cache: Disabled
   Cache Backup Power Source: Batteries
   Battery/Capacitor Count: 1
   Battery/Capacitor Status: OK
   SATA NCQ Supported: True

   Array: A
      Interface Type: SAS
      Unused Space: 0 MB
      Status: OK



      Logical Drive: 1
         Size: 558.7 GB
         Fault Tolerance: RAID 1+0
         Heads: 255
         Sectors Per Track: 32
         Cylinders: 65535
         Strip Size: 256 KB
         Status: OK
         Array Accelerator: Enabled
         Unique Identifier: 6005**
         Disk Name: /dev/cciss/c0d0
         Mount Points: /boot 487 MB
         OS Status: LOCKED
         Logical Drive Label: ADFCAC2F5001438021F00D903DF1
         Mirror Group 0:
            physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS, 300 GB, OK)
            physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS, 300 GB, OK)
         Mirror Group 1:
            physicaldrive 1I:1:3 (port 1I:box 1:bay 3, SAS, 300 GB, OK)
            physicaldrive 1I:1:4 (port 1I:box 1:bay 4, SAS, 300 GB, OK)
...
Рейтинг: 0 / 0
Высокий IO wait
    #38505769
Фотография Misha Tyurin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
oustkast,

у вас там lvm что-ли еще? как она работает?
...
Рейтинг: 0 / 0
Высокий IO wait
    #38506466
oustkast
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Misha Tyurin,

Да, изначально дисковая система была настроена на LVM, чтобы при необходимости была возможность менять размер дисков на лету. Но это никак не должно сказоваться на производительности системы в целом, т.к в среднем пишется по одному WAL-файлу (17MB) в минуту.
...
Рейтинг: 0 / 0
Высокий IO wait
    #38508215
oustkast
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поменял в ядре такие значения:

Код: html
1.
2.
vm.swappiness=1
vm.overcommit_memory=2



и буду следить дальше.

Всем спасибо!
...
Рейтинг: 0 / 0
Высокий IO wait
    #38511787
_Monah_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сори, что влезаю в чужую тему.
Подскажите пожалуйста, что можно сделать в такой ситуации:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
2013-12-25 08:53:00 FET  PID:23292 TID: 0 LOG:  checkpoint complete: wrote 183662 buffers (17.5%); 0 transaction log file(s) added, 0 removed, 61 recycled; write=13.169 s, sync=146.090 s, total=165.334 s; sync files=287, longest=16.449 s, average=0.509 s
2013-12-25 08:53:00 FET  PID:23292 TID: 0 LOG:  checkpoint starting: xlog
2013-12-25 08:57:20 FET  PID:23292 TID: 0 LOG:  checkpoint complete: wrote 198635 buffers (18.9%); 0 transaction log file(s) added, 0 removed, 72 recycled; write=81.896 s, sync=175.407 s, total=260.276 s; sync files=327, longest=21.261 s, average=0.536 s
2013-12-25 08:57:20 FET  PID:23292 TID: 0 LOG:  checkpoint starting: xlog
2013-12-25 09:02:20 FET  PID:23292 TID: 0 LOG:  checkpoint complete: wrote 159368 buffers (15.2%); 0 transaction log file(s) added, 11 removed, 71 recycled; write=79.125 s, sync=205.506 s, total=300.513 s; sync files=425, longest=21.696 s, average=0.483 s
2013-12-25 09:02:20 FET  PID:23292 TID: 0 LOG:  checkpoint starting: xlog
2013-12-25 09:07:17 FET  PID:23292 TID: 0 LOG:  checkpoint complete: wrote 142119 buffers (13.6%); 0 transaction log file(s) added, 0 removed, 69 recycled; write=83.368 s, sync=200.674 s, total=296.280 s; sync files=418, longest=33.860 s, average=0.480 s
2013-12-25 09:07:17 FET  PID:23292 TID: 0 LOG:  checkpoint starting: xlog


Код: sql
1.
2.
3.
4.
postgres=# select * from pg_stat_bgwriter;
 checkpoints_timed | checkpoints_req | buffers_checkpoint | buffers_clean | maxwritten_clean | buffers_backend | buffers_backend_fsync | buffers_alloc |          stats_reset
-------------------+-----------------+--------------------+---------------+------------------+-----------------+-----------------------+---------------+-------------------------------
                 8 |             523 |          102840769 |       4426963 |            42417 |        54774231 |                     0 |     218853340 | 2013-12-23 14:25:38.281495+03


Настройки:
checkpoint_segments = 40
checkpoint_timeout = 30min
checkpoint_completion_target = 0.7

Постоянный iowait 20% и больше.
...
Рейтинг: 0 / 0
Высокий IO wait
    #38512227
Фотография Misha Tyurin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Monah_,

авторcheckpoint starting: xlog
checkpoint_segments = 40

ваши 40 валов за несколько минут копятся. сделайте много сегментов.

но оч вероятно, что ваши проблемы с iowait в другом
...
Рейтинг: 0 / 0
Высокий IO wait
    #38512414
_Monah_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Misha Tyurin,

я недавно с постгресом познакомился.
В чем может быть проблема?
...
Рейтинг: 0 / 0
Высокий IO wait
    #38512427
Фотография Misha Tyurin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Monah_,

я давно, и тоже не знаю, в чем у вас может быть проблема. не телепат) много возможных мест
...
Рейтинг: 0 / 0
25 сообщений из 90, страница 3 из 4
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Высокий IO wait
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]