Як розрахувати max_connections для PostgreSQL та default_pool_size для pgbouncer?


0

Чи є правило чи щось, що я можу використати для обчислення хорошого числа max_connections, default_pool_sizeі max_client_conn?

Значення за замовчуванням є непарними. За замовчуванням PostgreSQL до max_connections = 100, тоді як pgboucner за замовчуванням до default_pool_size = 20. Чи не повинен розмір default_pool_size завжди бути вище, ніж max_connections? Інакше в чому сенс? Я думав, що pgbouncer мав на меті дозволити нам обробляти більше з'єднань, зменшуючи їх накладні витрати (повторно використовуючи підключення PostgreSQL). Я збентежений.

Я шукаю поради, подібні до тих, що містяться у вікі PostgreSQL , наприклад "цей параметр повинен становити ~ 50% вашої пам'яті".

Я також пам’ятаю, що була електронна таблиця для MySQL, яка дозволила вам обчислити такі параметри. Було б дивним мати щось подібне для PostgreSQL / pgbouncer.

Відповіді:


0

default_pool_size завжди повинен бути менше max_client_conn. max_client_connection - кількість з'єднань сокета між програмою та pgbuffer. default_pool_size - кількість з'єднань між pgbuffer та db.

Отже, якщо ви використовуєте транзакції в режимі пулу, ви можете поділитися меншим default_pool_size з більшою кількістю клієнтів.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.