2015-03-19 95 views
0

我有一个RoR应用程序,它使用延迟作业来运行大量HTTP API调用,这些调用用于发送批量SMS。延迟作业被锁定

但是,在意外情况下,这些作业中的任何一个都会被锁定,即使启动了新的请求,也不会让任何作业执行后执行。这一直持续下去,直到我将locked_by的值设置为NULL,然后手动运行这些作业,否则不会处理这些作业。 (我的locked_by值为delayed_jobs表为"<Server's Name>"。)

请指导我如何处理上述场景中的延迟作业。

回答

1

您是否设置了可用于处理这些事情的参数?喜欢: Delayed::Worker.destroy_failed_jobs, Delayed::Worker.sleep_delay Delayed::Worker.max_attempts, Delayed::Worker.max_run_time ??

+0

我可以找到Delayed :: Job.destroy_failed_jobs和max_run_time。请参阅[链接](http://pastebin.com/bws5k3TS) – abcsoeasy 2015-03-19 17:18:46

+0

你可以在github上检查延迟的求职宝石吗?那里会有适当的文件。 – AshwinKumarS 2015-03-20 06:20:50

+0

非常感谢@ 0v3rc10ck3d我会更新你所有的 – abcsoeasy 2015-03-22 13:20:56