
¿Existe alguna regla o algo que pueda usar para calcular un buen número para y max_connections
?default_pool_size
max_client_conn
Los valores predeterminados son extraños. PostgreSQL tiene como valor predeterminado max_connections=100, mientras que pgboucner tiene como valor predeterminado default_pool_size=20. ¿No debería default_pool_size ser siempre mayor que max_connections? De lo contrario, ¿cuál es el punto? Pensé que pgbouncer estaba destinado a permitirnos manejar más conexiones reduciendo su sobrecarga (al reutilizar las conexiones de PostgreSQL). Estoy confundido.
Estoy buscando consejos similares a los que se encuentran enWiki de PostgreSQL, como "este parámetro debería ser ~50% de tu memoria".
También recuerdo que había una hoja de cálculo para MySQL que te permitía calcular este tipo de parámetros. Sería fantástico tener algo así para PostgreSQL/pgbouncer.
Respuesta1
default_pool_size siempre debe ser menor que max_client_conn. max_client_connection es el número de conexiones de socket entre la aplicación y pgbuffer. default_pool_size es el número de conexiones entre pgbuffer y la base de datos.
Entonces, si está utilizando transacción como modo de grupo, puede compartir el default_pool_size más pequeño con la mayor cantidad de clientes.