courrier redis
This commit is contained in:
parent
a3f8fd4082
commit
04c0a089ac
16
lib/redis.ts
16
lib/redis.ts
@ -9,17 +9,21 @@ let redisClient: Redis | null = null;
|
|||||||
*/
|
*/
|
||||||
export function getRedisClient(): Redis {
|
export function getRedisClient(): Redis {
|
||||||
if (!redisClient) {
|
if (!redisClient) {
|
||||||
// Let IoRedis read from environment variables automatically
|
// Set Redis connection parameters from environment variables only
|
||||||
// It will read REDIS_URL, REDIS_HOST, REDIS_PORT, REDIS_PASSWORD, etc.
|
const redisOptions = {
|
||||||
redisClient = new Redis({
|
host: process.env.REDIS_HOST,
|
||||||
retryStrategy: (times) => {
|
port: process.env.REDIS_PORT ? parseInt(process.env.REDIS_PORT) : undefined,
|
||||||
// Exponential backoff with cap
|
password: process.env.REDIS_PASSWORD,
|
||||||
|
retryStrategy: (times: number) => {
|
||||||
const delay = Math.min(times * 100, 5000);
|
const delay = Math.min(times * 100, 5000);
|
||||||
return delay;
|
return delay;
|
||||||
},
|
},
|
||||||
maxRetriesPerRequest: 5,
|
maxRetriesPerRequest: 5,
|
||||||
enableOfflineQueue: true
|
enableOfflineQueue: true
|
||||||
});
|
};
|
||||||
|
|
||||||
|
console.log('Connecting to Redis using environment variables');
|
||||||
|
redisClient = new Redis(redisOptions);
|
||||||
|
|
||||||
redisClient.on('error', (err) => {
|
redisClient.on('error', (err) => {
|
||||||
console.error('Redis connection error:', err);
|
console.error('Redis connection error:', err);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user