如何查看所有"连接"被引用来自heroku pg:info?

时间:2016-02-15 18:49:56

标签: ruby-on-rails postgresql heroku

我跑的时候 heroku pg:infoheroku pg:info -a appname返回

=== DATABASE_URL
Plan:        Hobby-dev
Status:      Available
Connections: 2/20
PG Version:  9.4.4
...

和" Connections"线说2/20。我希望其中一个连接是我运行上述查询时生成的连接。但我无法弄清楚其他连接是什么。我在我的应用程序上运行了谷歌分析,实时统计显示没有用户。我在另一个终端窗口中的pg用户查询也返回没有用户登录。如果我在执行用户查询时仍然在另一个终端中运行heroku pg:info,则连接显示3(仍然有一个连接未计入)。

目前我只能想到以下连接可能性:

  1. 用户登录了该应用的网络界面(在我的情况下没有)
  2. 用户通过终端登录应用程序(每个终端实例...在我的情况下1运行heroku pg:info(连接应该说1/20但是说2/20)或2如果我运行该命令而另一个终端是开放运行heroku run rails c。所以当我希望连接在这个例子中说2/20时,它说3/20。
  3. 无论哪种方式,总有1个连接比我可以考虑的多。当我查看heroku网站上的文档时,我能找到的是增加可用连接的方法。不是什么连接代表。

    如何查看所有"连接"被引用来自heroku pg:info?

1 个答案:

答案 0 :(得分:1)

Rails uses a connection pool,因此您看到的连接数可能与其他非活动用户有关,这些用户导致连接被打开且池尚未被回收。

此外,要从Heroku插件连接到PG并获取统计信息,您实际上打开了与它的连接。除了来自访问者的Web请求打开的连接数之外,这与打开的连接总数相关。)