Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / тонкая настройка / 7 сообщений из 7, страница 1 из 1
13.12.2007, 08:31
    #35006256
rassvet
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
тонкая настройка
Добрый день
помогите правильно настроить конфиг postgres
сервер такой: 2 процессора xeon 3.2 Гц
4Гб ппамяти
FreeBSD 6.2
RAID 5 SCSI U320
postgresql 8.2.5
на сервере работает только БД
структура данных такая:
есть несколько таблиц связанных друг с другом обьем каждой от 5 до 20 млн записей
к ним делаются запросы на примерно 3-4 раза в секунду
раз в месяц заливается новая порция данных через функций (общее кол во ~10 млн записей)
тормоза начинаются если я пытаюсь вести лог действий пользователей, ну и вообще хочется оптимизировать по лучше все

кофиг менял от стандандартного так:
shared_buffers=56МБ
work_mem=128МБ
wal_buffers=256кб
checkpoint_segments=16
effective_cache_size=1024МБ

на что стоит еще обратить внимание?
что подкрутить
спасибо
...
Рейтинг: 0 / 0
13.12.2007, 09:35
    #35006353
Andrey Daeron
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
тонкая настройка
rassvet
кофиг менял от стандандартного так:
shared_buffers=56МБ
work_mem=128МБ
wal_buffers=256кб
checkpoint_segments=16
effective_cache_size=1024МБ

на что стоит еще обратить внимание?
что подкрутить
спасибо
Ну, можно поднять еще shared_buffers, если это необходимо. Ну например метров до 500 (только посмотрите манул на эту тему, возможно прийдется еще ОС конфигить).
А так - если что-то тормозит, то вот это (запрос, план его выполнения и результаты выполнения (EXPLAIN ANALYZE)) давайте "в студию", и тогда можно будет что-то более конкретное советовать.

Тормоза при логе действий пользователя зависят в первую очередь от того, что Вы под этим понимаете. Опишите подробнее ЧТО КОНКРЕТНО тормозит.
...
Рейтинг: 0 / 0
13.12.2007, 09:55
    #35006400
rassvet
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
тонкая настройка
shared_buffers пробовал 256 не получилось, значит это OC не дала :)
да наверно не совсем правильно выразился на счет лога,
лог пробовал вести 2-х типов
1 просто инсертом в спец таблицу вставлял ключевые действий получилось примерно 2 записи в секунду
2 пытался сделать статистику запросов, т.е. кол-во запросов в день по регионам (активность регионов смотрели), сдесь обновлялось примерно 10 раз в секунду

в обоих случаях начинались валится ошибки типа "too many clients already"
кол-во одновременных подключений стоит по умолчанию 40
увеличивать их я не стал, где то видел что это не самое лучшее решение

еще когда ведется активная запись в базу, то загрузка процессора стоновиться 100%
вкогда только чтение что загрузка 20-40% что приемлимо
...
Рейтинг: 0 / 0
13.12.2007, 12:38
    #35007087
MBG
MBG
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
тонкая настройка
rassvetshared_buffers пробовал 256 не получилось, значит это OC не дала :)
да наверно не совсем правильно выразился на счет лога,
лог пробовал вести 2-х типов
1 просто инсертом в спец таблицу вставлял ключевые действий получилось примерно 2 записи в секунду
2 пытался сделать статистику запросов, т.е. кол-во запросов в день по регионам (активность регионов смотрели), сдесь обновлялось примерно 10 раз в секунду


На вашем железе постгрес обработает 1000 и более запросов в секунду. Что-то у вас не так.

rassvet
в обоих случаях начинались валится ошибки типа "too many clients already"
кол-во одновременных подключений стоит по умолчанию 40
увеличивать их я не стал, где то видел что это не самое лучшее решение


А-а-а, кажется, понятно что. Про пул подключений слышали? Вот его вам и надо, кто же открывает отдельное подключение на каждый запрос.

rassvet
еще когда ведется активная запись в базу, то загрузка процессора стоновиться 100%
вкогда только чтение что загрузка 20-40% что приемлимо

Покажите Load average.
...
Рейтинг: 0 / 0
13.12.2007, 13:04
    #35007214
LeXa NalBat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
тонкая настройка
rassvetв обоих случаях начинались валится ошибки типа "too many clients already"

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

log_min_duration_statement = 0
log_connections = on
log_disconnections = on
log_duration = on
log_statement = 'all'

debug_print_plan = on # можно также и планы логировать
...
Рейтинг: 0 / 0
13.12.2007, 14:04
    #35007481
rassvet
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
тонкая настройка
MBG
что то не так да :)
про пул подключений это как?
на стороне php перед загрузкой страницы открывается соединение с базой после отработки всех запросов соединение закрывается
как то подругому надо?

Load average где посмотреть можно?
LeXa NalBat
попробую спасибо
...
Рейтинг: 0 / 0
13.12.2007, 17:36
    #35008494
MBG
MBG
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
тонкая настройка
rassvet MBG
что то не так да :)
про пул подключений это как?
на стороне php перед загрузкой страницы открывается соединение с базой после отработки всех запросов соединение закрывается
как то подругому надо?


Угу, надо не так. Открытие соединения - достаточно ресурсоемкая операция. Также не рекомендуется много одновременных коннектов. Вот здесь можете почитать подробнее (что-то этотт сайт не работает, посмотрите в кэше гугла):

http://www.samag.ru/art/07.2007/07.2007_02.html

Используйте pgpool, также в хороших серверах приложений есть встроенная поддержка пула подключений к базе (aolserver, а также явовские сервера). И поставьте реверспрокси (лучше pound, но если ваш веб-сервер не умеет кэшировать статику, то nginx).

rassvet
Load average где посмотреть можно?


Утилиты uptime, top
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / тонкая настройка / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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