Update Sequelize configuration for improved connection management
- Reduced connection pool size and adjusted timeout settings to prevent connection limits. - Added automatic reconnection handling for better resilience against connection losses. - Introduced retry logic for specific connection errors to enhance stability during database interactions.
This commit is contained in:
@@ -48,14 +48,27 @@ const sequelize = new Sequelize(dbName, dbUser, dbPass, {
|
|||||||
benchmark: SQL_BENCHMARK,
|
benchmark: SQL_BENCHMARK,
|
||||||
logging: sqlLogger,
|
logging: sqlLogger,
|
||||||
pool: {
|
pool: {
|
||||||
max: 20, // Maximale Anzahl von Verbindungen im Pool
|
max: 5, // Maximale Anzahl von Verbindungen im Pool (reduziert, um Connection Limit zu vermeiden)
|
||||||
min: 5, // Minimale Anzahl von Verbindungen im Pool
|
min: 1, // Minimale Anzahl von Verbindungen im Pool
|
||||||
acquire: 60000, // Maximale Zeit (ms) zum Erwerb einer Verbindung (60 Sekunden)
|
acquire: 30000, // Maximale Zeit (ms) zum Erwerb einer Verbindung (30 Sekunden)
|
||||||
idle: 10000, // Maximale Zeit (ms), die eine Verbindung idle sein kann, bevor sie entfernt wird
|
idle: 10000, // Maximale Zeit (ms), die eine Verbindung idle sein kann, bevor sie entfernt wird
|
||||||
evict: 1000 // Intervall (ms) zum Prüfen auf idle Verbindungen
|
evict: 1000, // Intervall (ms) zum Prüfen auf idle Verbindungen
|
||||||
|
handleDisconnects: true // Automatisches Reconnect bei Verbindungsverlust
|
||||||
},
|
},
|
||||||
dialectOptions: {
|
dialectOptions: {
|
||||||
connectTimeout: 60000 // Timeout für Verbindungsaufbau (60 Sekunden)
|
connectTimeout: 30000 // Timeout für Verbindungsaufbau (30 Sekunden)
|
||||||
|
},
|
||||||
|
retry: {
|
||||||
|
max: 3, // Maximale Anzahl von Wiederholungsversuchen
|
||||||
|
match: [
|
||||||
|
/ConnectionError/,
|
||||||
|
/SequelizeConnectionError/,
|
||||||
|
/SequelizeConnectionRefusedError/,
|
||||||
|
/SequelizeHostNotFoundError/,
|
||||||
|
/SequelizeHostNotReachableError/,
|
||||||
|
/SequelizeInvalidConnectionError/,
|
||||||
|
/SequelizeConnectionTimedOutError/
|
||||||
|
]
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user