我的应用程序是否做错了什么,以某种方式将数据库连接保持得太久,或者即使在应用程序从高活动期消退到低活动期后,postgres 连接数仍保持高水平是正常行为?
我的一个 Heroku 应用程序在基本计划上运行(允许 20 个连接),当我使用监视服务器活动时,heroku logs --tail
我无法在另一个 shell 窗口中使用连接到控制台heroku console
当我运行时,heroku pg:info
我注意到连接被固定在最大值,20,尽管当时服务器负载非常低......几个并发用户。
唯一不同的是我在 30 分钟前启动了 2 个 web dynos 和 4 个 worker dynos 来监控使用更多 worker 运行一些电子邮件作业的吞吐量。但之后连接数保持在 20 个。
在非常低的负载条件下,Heroku dyno 的数量(通常是空闲的)会影响保持打开的数据库连接的数量吗?
(目前我的服务器回到了 2 个 web dyno 和 1 个 worker dyno 并且正在经历中等负载 - 一封电子邮件正在发出,人们正在点击链接。连接稳定在 12 ......让我想知道是否有一些关于如果您的数据库仅限于 X 连接,您可以可靠地运行多少个测功机。)