nav-img
Evolution

Пулер соединений

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

Изменить режим пулера

  1. В списке кластеров Managed PostgreSQL® нажмите на название нужного кластера.

  2. Перейдите на вкладку Пулер соединений.

  3. Выберите режим пулера из списка:

    • Session

      В сессионном режиме соединение между пулером соединений и сервером PostgreSQL® поддерживается до тех пор, пока клиент не отключится от базы данных, что позволяет клиенту продолжать отправлять запросы без перерыва. В этом режиме каждое клиентское соединение использует отдельное подключение между пулером и сервером PostgreSQL®. В отличие от других режимов, он не снижает нагрузку на ресурсы, так как соединения не возвращаются в пул до отключения клиента.

    • Transaction

      В транзакцинном режиме соединение между пулером соединений и PostgreSQL® поддерживается до завершения транзакции, после чего возвращается в пул для повторного использования. Размер пула определяет количество активных транзакций и соединений между пулером и базой данных PostgreSQL®. Режим снижает нагрузку на ресурсы СУБД при большом количестве клиентских подключений с низкой нагрузкой.

  4. В диалоговом окне нажмите Сохранить, чтобы подтвердить выбор.

Параметры пулера

Параметры отображаются на странице кластера на вкладке Пулер соединений → Все параметры. Вы можете изменять неограниченное количество параметров за один раз.

В зависимости от выбранного режима вы можете настроить параметры пулера, чтобы оптимизировать работу кластера в зависимости от конкретной нагрузки и требований приложения. Доступные для редактирования параметры приведены в таблице.

Параметр

Тип

Описание

autodb_idle_timeout

integer

Задает время в секундах, после которого неактивные соединения с базой данных будут закрыты. Помогает освобождать ресурсы, простаивающие длительное время.

client_login_timeout

integer

Определяет максимальное время в секундах, в течение которого клиент должен подключиться, прежде чем попытка будет прервана. Предотвращает блокировку соединений.

default_pool_size

integer

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

Внимание

Параметр связан с серверным параметром max_connections. Убедитесь, что max_connections позволяет поддерживать все соединения, создаваемые пулером.

disable_pqexec

boolean

Если параметр включен, будет запрещено использование PQexec в клиентских приложениях.

Внимание

Изменение значения параметра приведет к перезагрузке пулера соединений. В это время кластер будет недоступен.

ignore_startup_parameters

string

Укажите параметры, которые будут игнорироваться при подключении.

max_client_conn

integer

Определяет максимальное количество клиентских соединений, которое может быть открыто одновременно.

min_pool_size

integer

Задает минимальное количество соединений, которое будет поддерживаться в пуле.

Внимание

Параметр связан с серверным параметром max_connections. Убедитесь, что max_connections позволяет поддерживать все соединения, создаваемые пулером.

reserve_pool_size

integer

Определяет количество резервных соединений, которые могут быть использованы в периоды пиковых нагрузок. При значении 0 резерв отсутствует.

Внимание

Параметр связан с серверным параметром max_connections. Убедитесь, что max_connections позволяет поддерживать все соединения, создаваемые пулером.

reserve_pool_timeout

integer

Устанавливает максимальное время в секундах, в течение которого соединение может использовать резервный пул. При значении 0 резервный пул не используется.

server_check_delay

integer

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

server_connect_timeout

integer

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

server_idle_timeout

integer

Определяет время в секундах, после которого неактивные серверные соединения будут закрыты.

server_lifetime

integer

Устанавливает максимальное время в секундах, в течение которого серверное соединение может существовать, прежде чем оно будет перезапущено.

server_login_retry

integer

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

server_reset_query_always

boolean

Если параметр включен, будет выполняться команда server_reset_query сброса состояния сервера после каждого запроса.

Изменить параметры

  1. В списке кластеров Managed PostgreSQL® нажмите на название нужного кластера.

  2. Перейдите на вкладку Пулер соединений.

  3. Измените значения одного или нескольких параметров.

  4. Перейдите на вкладку Параметры → Отредактированные и проверьте внесенные изменения.

  5. Нажмите Сохранить.

Вы можете отслеживать параметры по статусам:

  • «По умолчанию» — параметр со значением по умолчанию.

  • «Редактирование» — значение параметра изменено, но пока не сохранено.

  • «Отредактирован» — значение параметра задано пользователем и отличается от значения по умолчанию.