在我对Nitrous的开发框中,我能够运行God -c scripts.god -D
重新启动两个.rb文件,如果它们死了。
我只是运行它,大部分过程都保持活跃。
但我不能在heroku中做同样的事情。看来,当我运行god
命令时,.god文件无法打开并在heroku中生成错误。
问题:
如何在我的开发Nitrous环境中运行上帝重启heroku中的失败进程?
或者是否有推荐的替代方法来观察heroku进程并在失败时自动重启?
答案 0 :(得分:0)
访问您的网站时,您的流程应自动启动。
但是,Heroku确实提供了管理流程的命令,请查看https://devcenter.heroku.com/articles/dynos以获取完整列表。例如,要重新启动所有进程,请使用toolbelt命令:
heroku ps:restart --app yourappname
答案 1 :(得分:0)
在Heroku上,你不应该像上帝一样使用过程主管。如果你需要的只是确保你的进程在崩溃时重新启动,Heroku可以管理那么好。
它应该像在proc文件中添加两个条目一样简单。 https://devcenter.heroku.com/articles/background-jobs-queueing
worker: bundle exec sidekiq
clock: bundle exec clockwork lib/clock.rb
slack_listener: bundle exec ruby lib/slack_bot.rb
如果您的处理经常崩溃,您可能会遇到问题。 Dyno Crash Restart Policy