Redis®*: SidekiqでのRedisの設定

このドキュメントはRubyでの使用ガイドの一部です。完全なガイドはこちらからご覧いただけます:RedisをRubyと接続する方法

👋 Stackheroのドキュメントへようこそ!

Stackheroは、数多くの利点を提供する、すぐに使えるRedisクラウドソリューションを提供しています。

  • Redis Commander Web UIを含む。
  • メッセージサイズと転送が無制限
  • ワンクリックで簡単にアップデート
  • プライベートで専用のVMによる最適なパフォーマンスと強力なセキュリティ

時間を節約し、生活を簡素化:StackheroのRedisクラウドホスティングソリューションを試すのに5分しかかかりません!

Sidekiqは環境変数REDIS_URLで定義されたRedisサーバーを自動的に使用します。

環境変数REDIS_URLを次のように設定し、<password><XXXXXX>をあなたの情報に置き換えてください。

REDIS_URL="rediss://default:<password>@<XXXXXX>.stackhero-network.com:<PORT_TLS>"

デフォルトでは、Sidekiqはネットワーク障害に対する耐性を考慮しない設定になっています。これを改善するために、config/initializers/sidekiq.rbでSidekiqクライアントの設定を変更し、安定性を向上させることをお勧めします。

# ファイル config/initializers/sidekiq.rb
Sidekiq.configure_client do |config|
  config.redis = {
    network_timeout: 5, # タイムアウトを5秒に設定
    pool_timeout: 5, # タイムアウトを5秒に設定
    reconnect_attempts: Array.new(240, 0.5) # エラーを発生させる前に、0.5秒ごとに240回(合計120秒/2分)再接続を試みる
  }
end

この設定により、Redisサーバーが利用できなくなった場合、クライアントはエラーを報告する前に2分間再試行を行います。 例えば、Redisサーバーが再起動する時間を確保します。 Sidekiqの使用状況に応じて、この設定を調整し、特定の要件により適合させることができます。

SidekiqとRedisに関する詳細は、公式ドキュメントはこちらをご覧ください。