2

如果可能的话,从 Rails 应用程序本身重新启动 Heroku (delayed_job) 工作程序的最佳方法是什么?

4

1 回答 1

3

您使用 扩展您的工人heroku ps:scale worker=x,对吗?

将其缩小到 0 并再次缩小到原始值将重新启动您的工作人员。

您可以使用 heroku ruby​​ 客户端以编程方式执行此操作,请参阅示例和(相当糟糕的)文档

这段代码剪断可能会有所帮助:

heroku = Heroku::Client.new(ENV['HEROKU_USER'], ENV['HEROKU_PASS'])
heroku.ps_scale(ENV['HEROKU_APP'], :type=>'worker', :qty=>0)
heroku.ps_scale(ENV['HEROKU_APP'], :type=>'worker', :qty=>1)
于 2012-08-20T15:27:39.873 回答