diff --git a/lib/redis.ts b/lib/redis.ts index 1e3cf923..7b619ae6 100644 --- a/lib/redis.ts +++ b/lib/redis.ts @@ -9,15 +9,16 @@ let redisClient: Redis | null = null; */ export function getRedisClient(): Redis { if (!redisClient) { - const redisUrl = process.env.REDIS_URL || 'redis://:mySecretPassword@localhost:6379'; - - redisClient = new Redis(redisUrl, { + // Use existing Redis configuration from environment + // This will respect any configuration settings in your environment + redisClient = new Redis({ retryStrategy: (times) => { - const delay = Math.min(times * 50, 2000); + // Exponential backoff with cap + const delay = Math.min(times * 100, 5000); return delay; }, - enableOfflineQueue: true, - maxRetriesPerRequest: 3 + maxRetriesPerRequest: 5, + enableOfflineQueue: true }); redisClient.on('error', (err) => { @@ -27,6 +28,10 @@ export function getRedisClient(): Redis { redisClient.on('connect', () => { console.log('Successfully connected to Redis'); }); + + redisClient.on('reconnecting', () => { + console.log('Reconnecting to Redis...'); + }); } return redisClient;