Alexandr Ogurtsov writes: > Спасибо ещё раз, уточняю. >> Ну вообще есть "золотое правило" - количество процессов Pg должно быть >> равно количеству процессоров(ядер) * 2. То есть если у вас например 2 >> проца Intel Xeon 5430 с 4мя ядрами, то вам надо использовать до 16-ти >> процессов Pg. > Правило понял, но не совсем пойму как это управляется настройками PG > это же явно не max_connections = параметр. :) Никак по сути. Но вообще max_connections сделает именно это, просто на мой взгляд это уже перебор! :) > Я правильно понимаю что вы предлагаете запустить для примера с 8 > ядрами 16 отдельных "сущностей" PG? Нет конечно... >> Советую обратить внимание на PgBouncer. > Обратил. И балансировать между 16 запущными postmaster процессами? Ну на самом деле не 16, а до 16ти... :) То есть если у вас небольшая нагрузка, то зачем держать 16-ть процессов. :) >> Ну сделайте на системе 1-2 гига shared memory (shm) и отдайте их >> Pg. Тогда он почти гарантированно загрузить базу в память, а так >> дисковый кэш в Linux работает вполне оптимально. > > Опять же притворюсь "танкистом" ;) Это вы про отдельную точку > монтирования для > /var/lib/postgresql/8.3/main или все же про настройки > shared_buffers, temp_buffers, maintenance_work_mem, work_mem, > effective_cache_size, max_fsm_* Про настройки и sysctl... хотя как указали дальше, в 8.3 уже могли и отрвать храниние данных в shm - я давно не проверял. У меня и дисковый кэш прикрасно справляется.