yza*_*vin 3 ruby ruby-on-rails sidekiq
我有一个应用程序,每次部署后都需要杀死特定的 Sidekiq 工作人员。因为它的api建议我可以通过从 queue 中删除所有作业来做到这一点Sidekiq::Queue.new.clear。
但是,运行此命令后,worker 大小的数量Sidekiq::Workers.new.size仍然相同。实际上,我尝试了很多方法,但没有任何效果。请帮忙!
我自己没有尝试过,但根据文档:
您可以将所有要删除的工作人员添加为队列的一部分(例如 post_deploy)
class MyWorker
include Sidekiq::Worker
sidekiq_options :retry => 5, :dead => false, queue: :post_deploy
def perform()
...
end
end
Run Code Online (Sandbox Code Playgroud)
删除工人:
require 'sidekiq/api'
Sidekiq::Queue.new("post_deploy").clear
Run Code Online (Sandbox Code Playgroud)
要查找队列下的作业数量,需要这样查找
Sidekiq::Queue.new("post_deploy").size
Run Code Online (Sandbox Code Playgroud)
仅为了查找当前正在运行的 Sidekiq 线程数,您将使用 Sidekiq::Worker.size
如果我误解了你的问题,请告诉我。
| 归档时间: |
|
| 查看次数: |
9253 次 |
| 最近记录: |