
Existe uma regra ou algo que eu possa usar para calcular um bom número max_connections
para default_pool_size
e max_client_conn
?
Os padrões são estranhos. O padrão do PostgreSQL é max_connections=100, enquanto o pgboucner é padronizado como default_pool_size=20. default_pool_size não deveria ser sempre maior que max_connections? Caso contrário, qual é o sentido? Achei que o pgbouncer deveria nos permitir lidar com mais conexões, reduzindo sua sobrecarga (reutilizando as conexões do PostgreSQL). Estou confuso.
Estou procurando conselhos semelhantes aos encontrados emWiki do PostgreSQL, como "este parâmetro deve ser aproximadamente 50% da sua memória".
Lembro também que havia uma planilha para MySQL que permitia calcular esse tipo de parâmetro. Seria incrível ter algo assim para PostgreSQL/pgbouncer.
Responder1
default_pool_size deve sempre ser menor que max_client_conn. max_client_connection é o número de conexões de soquete entre o aplicativo e o pgbuffer. default_pool_size é o número de conexões entre o pgbuffer e o banco de dados.
Portanto, se você estiver usando a transação como modo de pool, poderá compartilhar o menor default_pool_size com o maior número de clientes.