【问题标题】:Managing different resque queues on multiple servers在多个服务器上管理不同的 resque 队列
【发布时间】:2011-06-24 08:56:33
【问题描述】:

我目前正在使用Resque 处理我的应用程序中的后台作业。现在我目前有 5 个不同的队列(它会增长非常快)。他们每个人都在做更新 Solr 索引、实时通知、预定时事通讯、延迟电子邮件和 SMS 等工作。目前正在使用 Resque 作为 rails gem 并从 rails 环境运行 Resque。

现在我计划将 Solr 索引更新任务和计划的时事通讯移动到不同的服务器,因为这两个执行繁重的操作。一种方法是将 rails 目录复制到新服务器并从 rails 环境运行 Resque 作业。但我不喜欢这样做。

另一个是为 resque 任务创建一个单独的 rake 应用程序。但问题是,这两项任务都与 Rails 模型和 Rails 模板密切相关。我完全不确定下一步该怎么做。

有没有人遇到过类似的问题,您是如何构建应用程序的?

【问题讨论】:

    标签: ruby-on-rails ruby redis resque


    【解决方案1】:

    我们使用rubber 来配置我们的服务器并进行部署。这是 Capistrano 的一个插件,可以进行基于角色的部署。其中一个角色是“resque_worker”,任何具有该角色的机器都将启动 resque-pool 以开始处理工作。

    但是您可以更简单地执行此操作。只需将您的应用程序部署到两台不同的机器上。 Resque 旨在允许不同机器上的工作人员。只要你的第二台机器可以访问你的redis服务器,一切都会正常的。

    【讨论】:

      猜你喜欢
      • 2021-01-14
      • 2021-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-31
      • 1970-01-01
      • 2012-08-28
      • 1970-01-01
      相关资源
      最近更新 更多