我在两台服务器上运行我的应用程序。每个人都有一份工作,检查
every 2.minutes do
runner "MailmanCheckJob.perform_later"
end
现在这个作业在每台服务器上运行。它检查新电子邮件并处理它们。如果电子邮件处理需要 4-5 分钟。一条消息被两个作业接收。 我如何确保每封电子邮件只被挑选一次。一旦所有处理结束,每封电子邮件都会被标记为已读。 它连接到远程redis。它们由 monit 监控。 是否有在集群中运行 sidekiq 的选项,以便只有一台服务器选择并运行作业。
-A
最佳答案
您正在 Sidekiq 中寻找定期工作
https://github.com/mperham/sidekiq/wiki/Related-Projects#recurring-jobs
关于ruby-on-rails - 集群中的 Sidekiq 作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41916541/