我的环境:CentOS,Rails 4,Ruby 2。
我在延迟作业无限循环中运行,从另一个站点获取实时信息。
任务是同时运行许多进程以从不同站点获取信息。对于每个新进程,我通过运行search_engine.delay.track!
将其添加到DJ队列。
因此,当我运行一个工作程序时,它成功地从队列中获取第一个作业,然后在下一个作业完成时。当我按./bin/delayed_job -n5 start
运行多个工作人员时,每个DJ工作人员排队等待第一份工作并开始track!
。但我希望他们只接受其他工人没有接受过的工作。
答案 0 :(得分:0)
这是因为Delayed::Worker.max_run_time = 0
。 DJ认为,这项工作已经完成并再次运行。