避免 delay_job 队列中的重复作业

ica*_*ool 3 ruby ruby-on-rails delayed-job

我在避免将重复作业添加到我的应用程序延迟作业队列时遇到了问题。我做了一些搜索,但都没有结果。任何有关如何实施解决方案的建议将不胜感激。

我偶然发现的链接,但没有提供解决方案。

  1. https://github.com/collectiveidea/delayed_job/issues/72
  2. https://groups.google.com/forum/#!topic/delayed_job/gZ9bFCdZrsk

spi*_*ann 5

我不会专注于避免重复工作。在我看来,作业队列应该被转储而不是保持状态。将作业添加到队列应该尽可能快。任何预先检查都会减慢响应时间。

作业本身应该足够聪明以判断它是否仍然适合运行,而不是预先检查重复项。例如,作业可以首先检查模型上的状态、标志或时间戳。并且仅当该前提条件仍然有效时,才开始实际处理。