Valkey: 配置 Valkey 与 Sidekiq
本文档属于使用 Ruby指南的一部分。您可以在此处查看完整指南:如何将 Valkey 与 Ruby 连接。
👋 欢迎来到Stackhero文档!
Stackhero提供现成的Valkey云解决方案,具有众多优势,包括:
- 包含
Redis Commanderweb UI。- 无限的消息大小和传输。
- 只需点击即可轻松更新。
- 由专用私有VM提供的最佳性能和强大安全性。
节省时间,简化生活:只需5分钟即可试用Stackhero的Valkey云托管解决方案!
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 的更多信息,您可以查阅 官方文档。