【问题标题】:How to kill background job in resque like the gem sidekiq如何杀死像 gem sidekiq 这样的 resque 中的后台工作
【发布时间】:2014-10-25 07:09:36
【问题描述】:

我使用救援 gem 来管理我的后台作业,

我想在创建新的后台作业后获取句柄 id,

然后我可以随时使用句柄 id 终止后台作业。

但我无法通过 resque 获取它,似乎无法删除任何排队的作业或正在运行的作业,

我知道 sidekiq 有删除排队作业的方法

how to delete a job in sidekiq

【问题讨论】:

    标签: ruby-on-rails resque sidekiq


    【解决方案1】:

    如果需要,您可以使用ResqueStatus gem 来跟踪作业并使用 id 将其删除。

    以下是 gem Docs 中给出的示例:

    您的工作类别:

    class SleepJob
      include Resque::Plugins::Status
    
      def perform
        # your code
        ...
        ...
      end
    end
    

    将作业排入队列并获取作业 ID:

    job_id = SleepJob.create(args)
    

    使用作业 ID 终止作业:

    Resque::Plugins::Status::Hash.kill(job_id)
    

    阅读更多Github

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-22
      • 2015-08-03
      • 2019-10-31
      • 1970-01-01
      • 2021-05-06
      • 1970-01-01
      相关资源
      最近更新 更多