每 10 秒安排一次作业 - ruby

Schedule Job each 10 seconds - ruby

我需要一个每 10 秒 运行 的调度程序机制。 我用的是sidekiq,所以我想用sidekiq-cron,但是最小的时间单位是一分钟。 此外,我一次只需要一个作业实例 运行ning。

这种情况的最佳做法是什么?

顺便说一下,我们使用 Rails 4.2,Ruby 2.1.2,Unicorn 作为 Web 服务器和 Sidekiq 3。

谢谢

编辑: 我需要它每 10 秒 运行

Sidekiq有调度方式: https://github.com/mperham/sidekiq/wiki/Scheduled-Jobs

所以你可以做到

MyWorker.perform_in(10.seconds)

使用循环运行的 rake 任务,睡眠时间为 10 秒。此 rake 任务可以创建 Sidekiq 将立即执行的作业。

Sidekiq 本身并不是为了解决这个问题而设计的。