【发布时间】:2011-03-23 18:51:16
【问题描述】:
我在让 delay_job 重新启动时遇到问题。
当我登录并运行 rake delayed_job RAILS_ENV=production 时,一切正常,所有作业都已处理,但是如果运行 RAILS_ENV=production script/delayed_job restart,则会启动一个新进程,但没有处理任何作业。
更新:我还应该提到,我可以在我的开发机器上运行上述两个命令,并且在这两种情况下,所有延迟的作业都得到了正确处理。
更新:我删除了之前的更新,因为它是关于从我的机器上运行脚本的,但是由于在服务器上调用命令时我无法让 delay_jobs 来处理任务,让事情变得更复杂是没有用的。
更新:之前我提到过运行RAILS_ENV=production script/delayed_job restart 启动了一个进程,但没有做任何处理。事实证明,即使在运行命令后显示 pid,也没有进程与 pid 匹配,或者是否有任何其他 ruby 进程正在运行。下面是 script/delayed_job 文件的内容:
#!/usr/bin/env ruby
require File.expand_path(File.join(File.dirname(__FILE__), '..', 'config', 'environment'))
require 'delayed/command'
Delayed::Command.new(ARGV).daemonize
我正在使用delayed_jobs v2.0.4
【问题讨论】:
标签: ruby delayed-job