Valkey: 配置 Valkey 與 Sidekiq

本文件是使用 Ruby指南的一部分。請在此處查看完整指南:如何將 Valkey 與 Ruby 連接

👋 歡迎來到 Stackhero 文件!

Stackhero 提供現成的 Valkey cloud 解決方案,帶來多種好處,包括:

  • 包含 Redis Commander 網頁介面
  • 無限制的訊息大小和傳輸。
  • 只需一鍵即可輕鬆更新
  • 專用私有 VM提供的最佳效能和強大安全性

節省時間簡化您的生活:只需 5 分鐘即可嘗試 Stackhero 的 Valkey cloud hosting 解決方案!

Sidekiq 將自動使用由環境變量 REDIS_URL 定義的 Valkey 服務器。

您可以這樣設置環境變量 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

此配置確保如果您的 Valkey 服務器變得不可用,客戶端將在 2 分鐘內嘗試重試,然後才報告錯誤。這給了 Valkey 服務器重新啟動的時間。例如,根據您的 Sidekiq 使用情況,您可以調整此設置以更好地滿足您的具體需求。

有關 Sidekiq 和 Valkey 的更多信息,您可以查閱 官方文檔