Приложение I. Настройка Postgres Pro для решений 1С
Вы можете установить и использовать Postgres Pro с решениями 1С в клиент/серверной модели. Для оптимальной производительности и стабильности измените следующие параметры в конфигурационном файле postgresql.conf
сервера Postgres Pro:
Увеличьте максимально возможное число одновременных подключений к серверу баз данных до 1000. Решения 1С могут открывать большое количество соединений, даже если все они не нужны, так что рекомендуется разрешить на сервере не менее 500 подключений.
max_connections = 1000
Чтобы временные таблицы работали корректно, измените следующие параметры:
Увеличьте размер буфера для временных таблиц:
temp_buffers = 32MB
Увеличьте число допустимых в одной транзакции блокировок таблиц или индексов до 256:
max_locks_per_transaction = 256
Обычно решения 1C используют множество временных таблиц. Такие таблицы в большом количестве используются каждым обслуживающим процессом. Закрывая соединение, Postgres Pro пытается удалить все временные таблицы в одной транзакции, при этом транзакция может запрашивать множество блокировок. Если число блокировок превысит значение
max_locks_per_transaction
, транзакция прервётся и оставит за собой множество потерянных временных таблиц.
Включите экранирование символом обратной косой черты для всех строк и выключите предупреждение об использовании этого символа:
standard_conforming_strings = off escape_string_warning = off
Задайте параметр
effective_cache_size
равным минимум половине объёма ОЗУ, доступного в системе. Эффективность оптимизатора запросов Postgres Pro зависит от выделенного ему объёма ОЗУ.Оптимизируйте планирование запросов с помощью расширений
online_analyze
иplantuner
:Добавьте
online_analyze
иplantuner
в переменнуюshared_preload_libraries
.shared_preload_libraries = 'online_analyze, plantuner'
Включите автоматический анализ временных таблиц при их модификации:
online_analyze.table_type = 'temporary'
Настройте оптимизатор Postgres Pro для улучшенного планирования запросов с недавно созданными пустыми таблицами:
plantuner.fix_empty_table = 'on'
Отключите подробные сообщения расширения
online_analyze
:online_analyze.verbose = 'off'