使用DelayedJob,如果有大量的工作积压并且工作人员无法跟上他们在指定时间运行的工作,那么DJ似乎会选择最早的优先运行时间。
正如您从附加图像中看到的那样,作业被锁定的时间晚于run_at,但是它选择了之前的run_at而不是更高的优先级。
我希望它能做相反的事情。
答案 0 :(得分:2)
您似乎向后使用优先级。较低的数字实际上具有较高的优所以我看起来没问题。
来自https://github.com/collectiveidea/delayed_job
默认情况下,所有作业都安排在 priority = 0,这是最高优先级。 您可以通过设置更改此设置 延迟:: Worker.default_priority to 别的。数字越低越好 更高的优先级。