1

我的 Heroku 应用程序是www.inflationtrends.com

通常,当我在 Git Bash 中运行“pg:info”以查看有多少连接时,该数字为零。

最近,我看到流量激增——不多,在过去 48 小时内只有 1,000 多一点——当我今天早上(东部时间上午 11 点左右)运行“pg:info”时,结果显示有 4 或 5 个打开的连接。

我的应用程序使用 Ruby gem Sinatra 运行。在 Sinatra 文件中,我有以下代码:

after do
    DB.disconnect
end

加载页面后,“after do”循环与 PostgreSQL 数据库断开连接。

变量“DB”包含我的 PostgreSQL 数据库的连接信息(用户名、密码、主机、端口号、SSL 模式要求):

DB = Sequel.postgres(
        db_name,
        :user=>user,
        :password=>password,
        :host=>host,
        :port=>port,
        :sslmode=>sslmode
    )

是否有某些原因可以打开连接?有没有办法关闭这些连接?有没有更有效的方法来处理这种情况?

4

3 回答 3

3

检查 Heroku 上打开的连接数的另一种方法是在控制台/终端中输入它,并将“myapp”替换为您的应用程序名称:

heroku pg:info -a myapp

于 2013-01-11T18:58:16.660 回答
1

您是否考虑过您的网站可能正在获得流量?当人们访问您的站点并使用您的应用程序时,连接将被打开。

尝试在您的网页中添加一些跟踪代码(例如 Google Analytics),然后检查记录的访问者数量是否与打开的连接数量相匹配。

数据库也有可能通过各种维护任务(例如备份)打开了连接。

于 2012-10-27T18:30:52.527 回答
1

我抓住了以下完美运行的工具带插件。

https://github.com/heroku/heroku-pg-extras#usage

heroku pg:killall --app xyz

于 2016-06-10T22:03:40.567 回答