【问题标题】:How would you trigger some code upon the completion of a resque worker?在 resque worker 完成后,你将如何触发一些代码?
【发布时间】:2011-07-12 14:40:57
【问题描述】:

我想在 resque worker 完成后执行一些 ruby​​ 代码。我找到了resque-status gem,它可以让您获取工作人员的状态,但是一旦状态从working 更改为completed,我将如何执行一些代码?

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-3 backgroundworker resque


    【解决方案1】:

    这应该在工作人员作业本身的范围之外处理。 通常,您希望在工作人员修改的数据的属性上创建观察者。

    例如,如果您的工作人员正在处理传统的 ActiveRecord 模型,您可以在模型中定义一个 after_update 方法(或使用 after_update 方法在该模型上定义一个观察者)。 由您决定在模型中检查什么以确定作业状态(完成、仍在工作等)。

    或者,您可以在模型上创建状态属性,然后工作人员将使用传统的 AASM 样式调用更新模型状态。状态转换回调将处理工作->完成的事件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-01-13
      • 2013-08-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多