34

我无法很好地总结使用 pgbouncer 进行事务池与会话池的优缺点。

这是否意味着事务繁重的工作负载以某种方式更好地负载平衡?是为了防止从 pgbouncer 连接到数据库需要尽可能多的连接吗?

4

1 回答 1

45

如果您有持有空闲会话的应用程序,事务级池将有所帮助。PgBouncer 不需要保持会话打开和空闲,它只是在新事务开始时抓取一个。那些空闲会话只花费你一个 pgbouncer 连接,而不是一个真正的空闲 Pg 会话,后端坐在那里浪费内存和同步开销什么都不做。

您想要会话池而不是事务池的主要原因是,如果您想使用命名的准备好的语句、咨询锁、侦听/通知或其他在会话级别而不是事务级别上运行的功能。

于 2012-08-30T04:38:12.183 回答