【问题标题】:Pragmatic ways to monitor Resque queues in Rails在 Rails 中监控 Resque 队列的实用方法
【发布时间】:2012-02-01 05:38:03
【问题描述】:

我希望在我的 Ruby on Rails 应用程序中使用 Resque 自动启动/重新启动队列。 (在 JRuby 上运行)

我想确保满足以下条件:

  1. 在我使用 capistrano 部署后启动工作器
  2. 如果工人因任何原因死亡,他们将重新启动
  3. 消耗过多内存的工作人员会停止/重新启动,并且可以向我发送电子邮件警报

目前是否有提供此功能或至少提供其中一部分功能的工具?如果没有任何东西可以重新启动队列/工作人员,我希望至少得到通知,以便我可以手动执行。

【问题讨论】:

    标签: ruby-on-rails ruby monitoring resque


    【解决方案1】:

    最简单的方法是使用诸如GodMonit 之类的程序来获取#2 和#3。对于 #1,您只需设置 Capistrano 脚本以向所有 Resque 工作人员发送kill -INT,然后监控程序将再次启动它们。

    使用kill -INT 而不是在 Capistrano 脚本中手动停止和启动作业的优势在于,您的部署不必等待每个工作人员停止处理其作业来重新启动它们。这也意味着,如果你有一个长期运行的工作,你将很快让任何空闲的工作人员尽快在新代码上运行。

    【讨论】:

      【解决方案2】:

      我不是特别熟悉它,但我相信god gem 经常用于流程管理。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-09-22
        • 2012-08-21
        • 2012-09-26
        • 2017-09-18
        • 2012-10-27
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多