fix(redis): add reconnect strategy to prevent closed client errors
This commit is contained in:
@@ -22,7 +22,7 @@ spec:
|
|||||||
fsGroup: 1000
|
fsGroup: 1000
|
||||||
containers:
|
containers:
|
||||||
- name: hermes-mcp
|
- name: hermes-mcp
|
||||||
image: localhost:32000/hermes-mcp@sha256:f7895aad093acb740dde7f1acbb97644ac33b825c68b8119c294d2ed6d675158
|
image: localhost:32000/hermes-mcp@sha256:c3d6ce959184e3fdf0d33ce84547aa0b0092ffdf535da90e09e18e161108ed6a
|
||||||
imagePullPolicy: Always
|
imagePullPolicy: Always
|
||||||
securityContext:
|
securityContext:
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
|
|||||||
13
src/redis.ts
13
src/redis.ts
@@ -2,9 +2,18 @@ import { createClient } from 'redis';
|
|||||||
|
|
||||||
const redis = createClient({
|
const redis = createClient({
|
||||||
url: process.env.REDIS_URL,
|
url: process.env.REDIS_URL,
|
||||||
socket: { connectTimeout: 3000, socketTimeout: 5000 },
|
socket: {
|
||||||
|
connectTimeout: 3000,
|
||||||
|
socketTimeout: 5000,
|
||||||
|
reconnectStrategy: (retries) => Math.min(retries * 100, 3000),
|
||||||
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
redis.on('error', (err) => console.error('[redis] error:', err.message));
|
redis.on('error', (err) => console.error('[redis] error:', err.message));
|
||||||
redis.connect().catch((err) => console.error('[redis] connect error:', err));
|
redis.on('connect', () => console.log('[redis] connected'));
|
||||||
|
redis.on('reconnecting', () => console.log('[redis] reconnecting...'));
|
||||||
|
redis.on('end', () => console.log('[redis] connection ended'));
|
||||||
|
|
||||||
|
redis.connect().catch((err) => console.error('[redis] initial connect error:', err.message));
|
||||||
|
|
||||||
export default redis;
|
export default redis;
|
||||||
|
|||||||
Reference in New Issue
Block a user