如何让Sidekiq在Heroku上工作?

这是我第一次尝试让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没有显示任何错误,所以我不明白为什么我的工作人员dyno发生冲突。

我做了一些研究并修复了这样的事情:

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

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

从这里得到了这个想法。

之后它运作正常。

还要确保设置REDIS_PROVIDER:

 heroku config:set REDIS_PROVIDER=REDISTOGO_URL 

Sidekiq的GitHub页面也有说明。 点击这里