Compare commits

...
Author SHA1 Message Date
Vishnu Narayanan 4d2052e372 feat: use separate redis for sidekiq 2025-03-20 20:22:10 +05:30
2 changed files with 20 additions and 2 deletions
+2 -2
View File
@@ -3,11 +3,11 @@ require Rails.root.join('lib/redis/config')
schedule_file = 'config/schedule.yml'
Sidekiq.configure_client do |config|
config.redis = Redis::Config.app
config.redis = Redis::Config.sidekiq
end
Sidekiq.configure_server do |config|
config.redis = Redis::Config.app
config.redis = Redis::Config.sidekiq
# skip the default start stop logging
if Rails.env.production?
+18
View File
@@ -5,10 +5,18 @@ module Redis::Config
config
end
def sidekiq
sidekiq_config
end
def config
@config ||= sentinel? ? sentinel_config : base_config
end
def sidekiq_config
@sidekiq_config ||= sentinel? ? sentinel_config : base_sidekiq_config
end
def base_config
{
url: ENV.fetch('REDIS_URL', 'redis://127.0.0.1:6379'),
@@ -19,6 +27,16 @@ module Redis::Config
}
end
def base_sidekiq_config
{
url: ENV.fetch('SIDEKIQ_REDIS_URL', ENV.fetch('REDIS_URL', 'redis://127.0.0.1:6379')),
password: ENV.fetch('SIDEKIQ_REDIS_PASSWORD', ENV.fetch('REDIS_PASSWORD', nil)).presence,
ssl_params: { verify_mode: Chatwoot.redis_ssl_verify_mode },
reconnect_attempts: 2,
timeout: 1
}
end
def sentinel?
ENV.fetch('REDIS_SENTINELS', nil).presence
end