【发布时间】:2018-05-04 16:37:05
【问题描述】:
我正在使用 Sidekiq 安排一个作业,并想在我安排它后立即检查队列大小:
MyClass.delay.my_method
Sidekiq::ScheduledSet.new.size # => 0
Sidekiq::Queue.new.size # => 0
我很惊讶队列是空的,尽管我在监控 UI 中看到该作业尚未执行(实际上它稍后会执行)。
我的真实情况要复杂一些。我安排了一个作业,然后呈现一个页面,在该页面上,我检查了某种类型的作业是否已安排或正在运行,但这一切似乎都发生得很快,我的检查失败了(如果我立即重新加载页面,那么检查成功)。
我猜在调用延迟和实际结束任何队列的作业之间存在微小的延迟。有没有办法解决这个问题,即检查所有此类工作(尚未进入队列)。
【问题讨论】: