我想将 postgres 序列与 cache 一起使用CREATE SEQUENCE serial CACHE 100
。SELECT nextval('serial');
目标是通过约 500 个连接/应用程序线程同时提高每秒 3000 次使用的性能。
问题是我正在进行密集的自动缩放,并且连接将被断开并重新连接,偶尔会在每次断开连接时在序列中留下未使用的 ID 的“洞”。
好吧,好消息可能是我正在使用具有事务池模式的PgBouncer heroku buildpack 。
我的问题是:事务池模式是否会解决我描述的“漏洞”问题,它是否会以下一个应用程序连接将从池中获取该会话并继续使用序列缓存的方式重用会话?