Redis®*: 配置 Redis 與 Sidekiq
此文件屬於使用 Ruby指南的一部分。請在此處查看完整指南:如何將 Redis 與 Ruby 連接。
👋 歡迎來到 Stackhero 文件!
Stackhero 提供一個即用型的 Redis cloud 解決方案,帶來多項好處,包括:
- 包含
Redis Commander網頁介面。- 無限制的訊息大小和傳輸。
- 只需一鍵即可輕鬆進行 更新。
- 由 專用私有 VM 提供的最佳 效能 和強大 安全性。
節省時間,簡化生活:只需 5 分鐘 即可嘗試 Stackhero 的 Redis cloud hosting 解決方案!
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) # 嘗試重新連接 240 次,每 0.5 秒一次(總共 120 秒/2 分鐘)然後觸發錯誤
}
end
此配置確保如果您的 Redis 服務器不可用,客戶端將在 2 分鐘內嘗試重試,然後報告錯誤。 這給予 Redis 服務器重啟的時間,例如。 根據您的 Sidekiq 使用情況,您可以調整此設置以更好地滿足您的特定需求。
有關 Sidekiq 和 Redis 的更多信息,您可以查閱 官方文檔。