powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Прошу оценить
10 сообщений из 10, страница 1 из 1
Прошу оценить
    #35139659
Фотография Zashibis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я собрал как можно больше информации по оптимизации настроек PostgreSQL в одном месте:
Оптимизация PostgreSQL
Прошу форумчан оценить, все ли там в порядке, возможно что-то надо исправить, добавить, убрать, буду очень признателен за помощь.
Натсройки выбраны для работы 1С 7.7 SQL
...
Рейтинг: 0 / 0
Прошу оценить
    #35140689
Andrey Daeron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
max_stack_depth
Специальный стек для сервера, в идеале он должен совпадать с размером стека, выставленном в ядре ОС. Установка большего значения чем в ядре может привести к ошибкам.
Рекомендуется устанавливать 2–4MB

ИМХО у винды например размер стека существенно не ограничен... откуда такая инфа вообще?

fsync=off
Это я бы не советовал делать вообще, особенно пользователям 1C. А если не дай Бог всё таки рухнет? Особенно на Слоне под выньдой, которая сама по себе падать любит?

effective_cache_size
Память, использующаяся для построения плана запросов.
Рекомендуется устанавливать порядка 50% от доступной памяти (т.е. не занятой операционной системой и приложениями)

Не, нифига. читаем доку:
Sets the planner's assumption about the effective size of the disk cache that is available to a single query.
т.е. это объем памяти которая ОС использует под кеш файлов. Её можно посмотреть и под Линухом и под виндой. Под виндой (как я понимаю) это в Диспетчере задач, Закладка Быстродействие, Физическая память-Системный кэш.) под линухом команду не помню.

ЗЫ По остальным пунктам - в некоторых сомнуха давит, что предложенные значения имеют отношение к действительности, но по причине - "не специалист" коментировать не хочу.
...
Рейтинг: 0 / 0
Прошу оценить
    #35141081
Фотография Zashibis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
max_stack_depth - долго искал, сколько же ее нужно ставить, судя по конфигурациям, которые выкладываются тут на форуме, народ выставляет 3-4 мегабайта и хорошо себя чувствует, больше ничего не могу добавить.

По поводу fsync - исправлю текст, чтобы народ больше боялся.

По effective_cache_size - исправлю тексты, услышать бы рекомендации по выделению :)
...
Рейтинг: 0 / 0
Прошу оценить
    #35142430
Thamerlan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Откуда такие данные по work_mem? Почему объем доступной оперативной памяти является единственным фактором? Вы совсем не указываете, что реальное кол-во памяти зависит от количества конкуретных операций (сессий). Ибо work_mem это объем памяти, доступный каждой операции сортировки.

PostgreSQL 8.2.6 DocumentationNote that for a complex query, several sort or hash operations might be running in parallel; each one will be allowed to use as much memory as this value specifies before it starts to put data into temporary files. Also, several running sessions could be doing such operations concurrently. So the total memory used could be many times the value of work_mem; it is necessary to keep this fact in mind when choosing the value.
...
Рейтинг: 0 / 0
Прошу оценить
    #35142506
Фотография Zashibis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хорошо, тексты я поменял для effective_cache_size и work_mem.
На сколько я понимаю, оба параметра зависят от количества подключений.
Кто-нибудь может дать рекомендации, хоть какие-нибудь, сколько же их устанавливать?
Верно ли я написал для effective_cache_size?
wiki
effective_cache_size
Передает данные планировщику запросов об объеме памяти, которая используется ОС для кэширования файлов, для одного запроса.
Этот параметр в ОС можно посмотреть в настройках:
Для Windows: в Диспетчере задач, Закладка Быстродействие, Физическая память-Системный кэш.
Для Linux: наберите команду free, необходимое значение в столбце cached (в kB)
Данное значение необходимо разделить на количество конкурентных запросов в один момент времени (среднее количество подключений к базе + запас).


Спасибо.
...
Рейтинг: 0 / 0
Прошу оценить
    #35142521
Andrey Daeron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zashibis
По effective_cache_size - исправлю тексты, услышать бы рекомендации по выделению :)
Дык, посмотреть и поставить :) Это сложнозаверченный параметр. ОС может сообщить скока она использует под кэш файлов. Больше этого значения ставить не имеет смысла. А дальше - если у Вас один постгрес живёт - то скорее всего почти весь будет отдан ему, а если у Вас зоопарк - то реально это число оценить сложно. Наверно где так.
...
Рейтинг: 0 / 0
Прошу оценить
    #35142642
alex_v13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
max_stack_depth - можно в принципе и не в конфиге, если не в винде, а тупо на юзера postgres в линуксе ставить.

На нагруженных БД сильно важный параметр, т.к. стек выделяется каждому процессу, а так как postgres тока форкаться умеет, то при дефалтовых в линуксе 8МБ на процесс всего 100 активных коннектов сожрут ~1 ГБ со всеми накладными только на запуске, без данных, чем сильно попортят жизнь дисковому кэшу и всю малину с памятью.

У меня на 500-600 коннектов даже с 2 МБ стеком это чувствуется.

fsync=off - Нормально для всех сайтов/проектов у которых число чтений на 1-2 порядка больше записи - т.е. почти все веб-сайты. Эксплуатировать сервер БД без упсы это бред, а поэтому не так страшно как кажется.

effective_cache_size

Это эмпирический параметр, который определяет эффективный объем данных который база может считать закэшированными (читай быстро доступными) и спокойно давать на них seqsan.. Параметр определяет общую эффективность связки: операционка + дисковый кэш + RAID-контроллер + диски.
Для выделенного сервера с нормальным объемом памяти обычно задается до 2/3...3/4 ее объема.
...
Рейтинг: 0 / 0
Прошу оценить
    #35143615
Фотография Zashibis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На MS SQL Server 1C 7.7 просаживается на 20 коннектах из-за блокировок, не думаю что на PostgreSQL кто-то будет использовать 100 коннектов :)

Спасибо за информацию, учту эти данные
...
Рейтинг: 0 / 0
Прошу оценить
    #35144844
alex_v13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ZashibisНа MS SQL Server 1C 7.7 просаживается на 20 коннектах из-за блокировок, не думаю что на PostgreSQL кто-то будет использовать 100 коннектов :)

Спасибо за информацию, учту эти данные

Постгрес ваще-то версионник, и у него другая архитектура приема запросов/коннектов.
Ну и 1С тоже можно спокойно загрузить очень неплохо...
...
Рейтинг: 0 / 0
Прошу оценить
    #35144928
Фотография Zashibis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1С 7.7 не приспособлена к его версионности, и если будет очень больно и часто падать из-за откатов транзакций - то блокировки таблиц придется включить и все будет как в MS SQL Server
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Прошу оценить
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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