这是可能的解决方案:https ://coderwall.com/p/u0x3nw
由于此处不欢迎仅包含链接的答案,因此我将复制链接内容。
解决 Heroku 空闲策略的一种常见方法是设置一个脚本以每小时发送一次 ping 以保持测功机活着。
您可以使用以下方法将 New Relic 的免费计划添加到您的帐户。
$ heroku addons:add newrelic:standard
打开New Relic界面:
$ heroku addons:open newrelic
在菜单下的报告部分中,找到可用性。
添加您的 URL,将 ping 时间设置为 < 1 小时,一切就绪。
使用调度程序
或者,如果您不喜欢或不想使用 New Relic,您实际上可以使用 Heroku 调度程序通过 Heroku 本身设置一个保持活动的 dyno ping。
例如,如果您使用的是 Ruby,则可以使用 Rake 任务,例如:
desc "Pings PING_URL to keep a dyno alive"
task :dyno_ping do
require "net/http"
if ENV['PING_URL']
uri = URI(ENV['PING_URL'])
Net::HTTP.get_response(uri)
end
end
将 PING_URL 添加到您的 Heroku 环境:
$ heroku config:add PING_URL=http://my-app.herokuapp.com
设置调度器:
$ heroku addons:add scheduler:standard
$ heroku addons:open scheduler
最后一个命令应该在您的浏览器中打开调度程序界面。您现在可以将 dyno_ping 任务设置为每小时运行一次:
$ rake dyno_ping
(c) Aupajo的原始博客文章