【问题标题】:Sidekiq Workers on CloudfoundryCloudfoundry 上的 Sidekiq Workers
【发布时间】:2012-12-20 14:09:21
【问题描述】:

我已阅读有关 background tasks on Cloud Foundry 的可用文档。但这对如何将 sidekiq 部署到 cloudfoundry 没有帮助?

我该怎么跑,bundle exec sidekiq

【问题讨论】:

    标签: cloud-foundry sidekiq


    【解决方案1】:

    当您推送应用程序时,不要为框架选择“Rails”,而是选择“其他”,然后选择“独立”,然后系统会提示您输入启动应用程序的命令,您可以在此处输入 @ 987654322@

    【讨论】:

    • 整个应用程序是一个 Rails 应用程序,Sikdekiq 只是其中的一部分。那么,您所说的方式-rails 应用程序将如何被推送?还是需要独立推送?
    • 独立地,是的,最简单的方法是维护两个清单,您可以根据您是要推送工作人员还是 Web 应用程序来交换它们。或者,您可以编写一个脚本,像这样...github.com/danhigham/log_squirrel/blob/master/deploy.rb,不过前者可能更容易:-)
    • 我照你说的做了,但任务仍然没有运行。在日志中,我只看到 sidekiq 启动但没有执行任何作业
    • 您确定 a) sidekiq worker 应用绑定到同一个 redis 实例并且 b) 正在创建作业吗?
    【解决方案2】:

    尝试创建一个新清单 (manifest.worker.yml) 并包含以下内容:

    applications:
      .:
        name: APPNAME-worker
        framework:
          name: standalone
          info:
            mem: 64M
            description: Standalone Application
            exec: 
        url: 
        path: .
        runtime: ruby19
        command: bundle exec sidekiq -e production
        mem: 256M
        instances: 1
        services:
          APPNAME-postgresql:
            type: postgresql
          APPNAME-redis:
            type: redis
    

    现在开始你的 sidekiq worker:

    vmc push --manifest manifest.worker.yml --path .
    

    这些服务应该与您在 Web 应用的 manifest.yml 中包含的服务相同

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-10
      • 2013-04-14
      相关资源
      最近更新 更多