技術ブログ

(技術系中心)基本自分用備忘録なので、あくまで参考程度でお願いします。

sidekiqの使い方備忘録

sidekiqの使い方備忘録

仕事でsidekiq利用する機会があったので使い方の備忘録を残す(自分用)

sidekiqとは?

github.com

Simple, efficient background processing for Ruby. Sidekiq uses threads to handle many jobs at the same time in the same process. It does not require Rails but will integrate tightly with Rails to make background processing dead simple.

バックグラウンドプロセス効率化することができる。 Railsを利用して利用するケースが多い、マルチスレッド処理ジョブを同一スレッドで処理することが可能。

始め方

sidekiq管理画面

バックグランドで処理されているジョブを管理画面から確認することが可能です。

Sidekiqには管理画面があり、routes.rbに以下のコードを記述すると実装できます。

   require 'sidekiq/web'
   mount Sidekiq::Web, at: "/sidekiq"

http://localhost:3000/sidekiqにアクセスすると、管理画面に飛ぶことができます。

下記のようなエラーになる場合はRedisの設定ができていない可能性が高いです、sidekiqをローカルで利用する方法を参照してredisをインストールして起動すればエラーが消えるはずです。

sidekiqをローカルで利用する方法

redisインストール(Mac OS

brew install redis

redis起動

brew services start redis

redis終了

brew services stop redis

sidekiqの利用方法

config以下に書いた設定コマンドを、以下のコマンドを実行します

bundle exec sidekiq -C config/sidekiq.yml

参考サイト

【Ruby on Rails】sidekiqの導入手順(ローカル、Heroku、AWS EC2、Docker、Capistrano) - Qiita

macOS に Redis を Homebrew でインストールして brew services で起動する - Qiita