51

HerokuでデプロイされたRailsアプリでSidekiqを起動して実行する際に問題が発生します。私のアプリは開発中(およびSidekiqなしのHerokuで)正常に動作しています。

次のコマンドでProcfileを作成しました。

worker: bundle exec sidekiq

を実行するheroku psと、表示されるプロセスは。だけですweb.1

Sidekiq用に1つ見る必要がありますか?

エラーが発生します:

Redis::CannotConnectError (Error connecting to Redis on localhost:6379)Herokuのログにあります。

更新:おそらく必要だったことがわかりましheroku addons:add redistogoた。まだ動作していません。基本的な構成が不足しているように感じます。

HerokuアプリでRedisを起動して実行するために必要なことはありますか?

私はRedis/Sidekiqを約1日間使用しているので、これは私にとって初めてのことです。

ありがとう!

グレッグ

4

7 に答える 7

63

いいえ、Heroku for Sidekiqの設定は必要ありません。RedisToGoプラグインを追加するだけで、すぐに使用できます。Heroku構成で、少なくとも1人のワーカーをアプリに関連付けることを忘れないでください。

これが私のデフォルトのProcfileです:

web: bundle exec thin start -p $PORT
worker: bundle exec sidekiq -c 5 -v
于 2012-12-19T09:04:46.403 に答える
46

次のコマンドで sidekiq プロセスが本当に開始されているかどうかを確認する価値があります。

heroku ps

ワーカーがない場合は、次のコマンドを実行する必要がある場合があります。

heroku ps:scale worker+1

Web UI にバグがあり、一部のチーム メンバーはワーカーの数を 0 から 1 に増やすことを許可されていませんでしたが、UI ではそれが示されているように見えました!

于 2013-08-23T22:48:45.757 に答える
1

もうすぐそこにいるようですね。heroku構成でREDISTOGO_URLを設定する必要があるだけかもしれませんか?

heroku config 

redistogo値を表示する必要がありますか?

それをREDISTOGO_URLにコピーすると、sidekiqは機能するはずですか?

heroku config:add REDISTOGO_URL=<redistogo value>

編集: Sidekiqは現在これらのいずれかを使用します: https ://github.com/mperham/sidekiq/blob/master/lib/sidekiq/redis_connection.rb#L29-L33

Edit2:RedisToGo を使用している場合は、構成を追加する必要がないという点で、Gregは正しいです。ただし、OpenRedisまたは他のRedisプロバイダーを使用している場合は、SidekiqのREDISTOGO_URLを追加する必要があります

于 2012-12-07T23:11:00.660 に答える