如果我设置了一个包含多个数据库条目的 pgbouncer.ini 配置文件,那么 pgBouncer 是否会为每个条目创建一个单独的池?我会这么认为,但无法证实这一点。
例如,像这样:
[数据库] db1 = ... db2 = ... [pgbouncer] . . . max_client_conn = 480 default_pool_size = 250
我会为每个数据库设置一个 250 个默认池,最多 480 个,还是在两者之间共享总共250 个默认连接和最多 480 个连接?
非常感谢!
是的,pgbouncer 为每个数据库创建一个单独的池。在这种情况下,您真的不希望池大小达到 250 - 因为对于每个数据库,从 pgbouncer 到 postgres 服务器的连接是 250 个。
最大值 480 是从客户端到 pgbouncer 的连接总数,无论它们进入哪个数据库。
您将在每个用户(或角色)的每个数据库中拥有一个池,您在 [databases] 部分的 db1 或 db2 行中省略指定用户。尽管您可以根据需要强制与某些预定义用户进行连接。
你有点误解什么
max_client_conn
是 . 这是“轻量级”连接限制。TO pgbouncer 与数据库服务器的最大连接数。