首页 文章

如何让Sidekiq在Heroku上工作?

提问于
浏览
7

这是我第一次尝试让Redis在Heroku上工作 .

我添加了一个工作器dyno(就在今天,所以还没付款),添加了RedisToGo Nano附加组件,在我的本地机器上测试了后台作业,并将应用程序推送到了heroku .

heroku ps

=== web: `bundle exec rails server -p $PORT`
web.1: up 2013/03/03 18:26:09 (~ 37m ago)

=== worker: `bundle exec rake jobs:work`
worker.1: crashed 2013/03/03 19:02:15 (~ 1m ago)

Sidekiq Web Interface说一个作业已入队,但零处理或失败 .

我猜这是因为我的工作人员dyno坠毁了 .

有没有我不知道的noob错误?

(例如,我需要运行一些命令才能开始收听后台工作等)

heroku logs --tail 不知道为什么我的 Worker dyno发生冲突 .

2 回答

  • 14

    我做了一些研究,并修复如下:

    在app的根目录下,我创建了一个名为“Procfile”的文件,其中包含以下内容:

    web: bundle exec rails server -p $PORT
    worker: bundle exec sidekiq -c 5 -v
    

    here得到了这个想法 .

    之后它运作正常 .

  • 0

    还要确保设置REDIS_PROVIDER:

    heroku config:set REDIS_PROVIDER=REDISTOGO_URL
    

    Sidekiq的GitHub页面也有说明 . 点击here

相关问题