雷斯克对阵西德基克?

我目前正在使用我的背景过程 Resque,但最近我听到了很多关于 sidekiq的吹嘘。有人能比较一下吗?

特别是我想知道是否有一种方法可以通过编程方式监视作业是否在 sidekiq中完成

44661 次浏览

雷斯克:

优点:

缺点

  • 每个工人运行一个进程(使用更多内存) ;
  • 不会重试作业(无论如何,都是开箱即用的)。

Sidekiq:

优点

  • 每个工作线程运行(使用更少的内存) ;
  • 少用叉子(工作更快) ;
  • 更多现成的选择。

缺点

  • [ big ] 要求代码和 所有依赖项具有线程安全性
  • 在某些红宝石上工作得比其他红宝石好(推荐使用 jruby,由于 GVL (全局 VM 锁定) ,MRI 的效率降低)。

问题是:

特别是我想知道是否有一种方法可以监控 以编程方式确定某个作业是否已在 sidekiq 中完成

这里有一个解决方案:

  1. Sidekiq: : Status gem
  2. 批处理 API (Sidekiq Pro)-用途