質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Redis

Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

解決済

1回答

9924閲覧

Sidekiqが動きません

d-mato

総合スコア41

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Redis

Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

0クリップ

投稿2016/09/17 11:52

編集2016/09/17 11:55

Sidekiqを使用し、非同期でジョブを回そうとしたのですが、キューには追加されるもののジョブが実行されません。

環境は以下の通りです。

  • Ruby 2.2.2
  • Rails 4.2.4
  • Sidekiq 4.2.1
  • Redis 3.2.3

試したこと

  • redis-cliを実行し、redisに正常に接続できることを確認
  • bundle exec sidekiq -q default を実行し、sidekiqが立ち上がることを確認 (下記がその時のsidekiq.logです)
2016-09-17T11:49:49.145Z 11656 TID-osh3nsnmc INFO: Booting Sidekiq 4.2.1 with redis options {:url=>"redis://localhost:6379", :namespace=>"sidekiq"} 2016-09-17T11:49:51.259Z 11656 TID-osh3nsnmc INFO: Running in ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-linux] 2016-09-17T11:49:51.259Z 11656 TID-osh3nsnmc INFO: See LICENSE and the LGPL-3.0 for licensing details. 2016-09-17T11:49:51.259Z 11656 TID-osh3nsnmc INFO: Upgrade to Sidekiq Pro for more features and support: http://sidekiq.org 2016-09-17T11:49:51.262Z 11656 TID-osh3nsnmc INFO: Starting processing, hit Ctrl-C to stop
  • http://localhost:3000/sidekiq にブラウザでアクセスし、Webインターフェイスにも問題が無いことを確認
  • 下記のテスト用Jobを作成し、rails consoleから実行

ruby

1class SampleJob < ActiveJob::Base 2 queue_as :default 3 def perform 4 puts '動いてますよ' 5 end 6end

下記のコンソールのログから、SidekiqのAPIも正常であることを確認

[1] pry(main)> SampleJob.perform_later Enqueued SampleJob (Job ID: 174452ec-1e0d-4174-b4e3-2eb5559c0706) to Sidekiq(default) => #<SampleJob:0x0055a46e95a138 @arguments=[], @job_id="174452ec-1e0d-4174-b4e3-2eb5559c0706", @queue_name="default"> [2] pry(main)> Sidekiq::Queue.new => #<Sidekiq::Queue:0x0055a46c26bcc0 @name="default", @rname="queue:default"> [3] pry(main)> Sidekiq::Queue.new.size => 2
  • SidekiqのWebインターフェイスを再度開き、上記でperfor_laterしたことで、の待機状態ジョブ数が増えていることを確認

sidekiq.log や development.log には全くエラー出力が無く、何が問題なのかわからず途方にくれています。

他に試すべきこと、確認事項などあれば些細な事でも結構ですので、助言を頂けると幸いです。よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

すみません。自己解決しました。
config/initializers/sidekiq.rbを削除したところ正常に動きました。

config/initializers/sidekiq.rbが無い場合、デフォルトでローカルのredisに接続されてジョブが走るため、初期化スクリプトは作っていないつもりでしたが、他のメンバーが以前追加した初期化スクリプトが残っていて、その記述が中途半端であったため、ジョブが実行されなかったようです。

投稿2016/09/18 07:40

d-mato

総合スコア41

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問