Sidekiq perform_later 等待时间后入队
Sidekiq perform_later enqueue after waiting time
我需要在后台向 运行 添加作业,我可以通过 MyJob.perform_later(args)
轻松完成。
但是在排程之前我需要一些等待时间,比如1分钟。
因此,如果我安排作业,它应该会在 1 分钟后排队。
我能想到的一个解决方法是在我的工作中增加睡眠时间。
例如:
class MyJob < ApplicationJob
def perform(args)
sleep 1.minute
code
more code
more code
end
end
它立即入队但在执行时休眠(不是我要找的)。
应该有更好的方法来实现这一点。
好吧,你可以设置一个等待选项,比如
MyJob.set(wait: 1.minute).perform_later
通过设置等待,作业将在 1 分钟后排队。
参考:https://guides.rubyonrails.org/v4.2/active_job_basics.html#enqueue-the-job
我需要在后台向 运行 添加作业,我可以通过 MyJob.perform_later(args)
轻松完成。
但是在排程之前我需要一些等待时间,比如1分钟。
因此,如果我安排作业,它应该会在 1 分钟后排队。
我能想到的一个解决方法是在我的工作中增加睡眠时间。 例如:
class MyJob < ApplicationJob
def perform(args)
sleep 1.minute
code
more code
more code
end
end
它立即入队但在执行时休眠(不是我要找的)。 应该有更好的方法来实现这一点。
好吧,你可以设置一个等待选项,比如
MyJob.set(wait: 1.minute).perform_later
通过设置等待,作业将在 1 分钟后排队。
参考:https://guides.rubyonrails.org/v4.2/active_job_basics.html#enqueue-the-job