支持几种不同的连接模式:
内存需求低(默认是每个连接2K)。这是因为PgBouncer不需要一次性查看所有包。
它不绑定到一个后端服务器,目标数据库可以位于不同的主机上。
支持在线重新配置大部分设置。
支持在线重启/升级,而不用删除客户端连接。
仅支持协议V3,所以后端版本必须 >= 7.4。
下面的表列出了各种PostgreSQL特性和它们是否能与PgBouncer池模式一起共用。 请注意, ‘事务’ 池打破了客户端对服务器的期望, 只有在应用程序不使用非工作功能的情况下才能使用。
特性 | 会话池 | 事务池 |
---|---|---|
启动参数 | 支持 1 | 支持 1 |
SET/RESET | 支持 | 从不支持 |
LISTEN/NOTIFY | 支持 | 从不支持 |
WITHOUT HOLD CURSOR | 支持 | 支持 |
WITH HOLD CURSOR | 支持 2 | 从不支持 |
协议级准备计划 | 支持 2 | 不支持 3 |
PREPARE / DEALLOCATE | 支持 2 | 从不支持 |
ON COMMIT DROP temp tables | 支持 | 支持 |
PRESERVE/DELETE ROWS temp tables | 支持 2 | 从不支持 |
重置缓存的计划 | 支持 2 | 支持 2 |
LOAD 语句 | 支持 | 从不支持 |