Настроить размер пула соединений с сервером БД

Сервер приложений Docsvision при работе с сервером БД использует пул соединений фиксированного размера. Изменить размер пула по умолчанию можно с помощью специальной настройки в реестре. По умолчанию данная настройка отсутствует, а размер задан как 100 соединений.

Чтобы изменить количество соединений, необходимо в ветке HKEY_LOCAL_MACHINE\SOFTWARE\DocsVision\Platform\Server создать параметр DbConnectionPoolSize (dword), в котором определить требуемый размер пула.

Увеличение размера пула может привести к увеличению потребляемой памяти на серверах приложений и баз данных.

Конфигурировать СУБД нужно учитывая перечисленные ниже факты:

Используя настройки max_connections в БД PostgreSQL можно ограничить количество подключений к серверу БД. Настройка влияет на подключения к серверу БД, а не к БД. Если на сервере PostgreSQL несколько БД, ограничение влияет на общее количество подключений к серверу: может быть открыто 60 соединений с одной БД, а с другой удастся открыть лишь 40, дальнейшие попытки открыть подключение выдадут ошибку.

Настройка DbConnectionPoolSize определяет максимальный размер пула соединений с базой на клиентской стороне, а не с сервером. Если на одном сервере приложений подключили две БД PostgreSQL c одного инстанса, то dvappserver при определённых нагрузках может пытаться открыть по 100 соединений к каждой БД, то есть 200 подключений к одному инстансу PostgreSQL.

Если два сервера приложений обрабатывают одну БД PostgreSQL, то каждый dvappserver может пытаться открыть по 100 соединений к этой базе, то есть 200 подключений к одному инстансу PostgreSQL.

Также нужно помнить о подключениях от pgagent, каких-то дополнительных соединениях от pgadmin (или другой среды администрирования), ServerConsole, сервиса полнотекстового индексирования, файлового сервиса.