diff --git a/node-api/src/services/db.js b/node-api/src/services/db.js index 09dbaf1..cced7e3 100644 --- a/node-api/src/services/db.js +++ b/node-api/src/services/db.js @@ -2,7 +2,21 @@ import pkgPg from 'pg'; import { PGDATABASE, PGHOST, PGPASSWORD, PGPORT, PGUSER, SESSION_TIMEOUT, VLAN_ID, MAX_DOWN, MAX_UP } from '../config/env.js'; const { Pool } = pkgPg; -export const pool = new Pool({ host: PGHOST, port: PGPORT, database: PGDATABASE, user: PGUSER, password: PGPASSWORD }); +export const pool = new Pool({ + host: PGHOST, + port: PGPORT, + database: PGDATABASE, + user: PGUSER, + password: PGPASSWORD, + max: 20, // número máximo de conexiones en el pool + idleTimeoutMillis: 30000, // cerrar conexiones inactivas después de 30 segundos + connectionTimeoutMillis: 5000, // timeout para obtener una conexión del pool +}); + +// Manejo de errores del pool para evitar que el proceso se caiga +pool.on('error', (err, client) => { + console.error('Error inesperado en el cliente de PostgreSQL:', err); +}); export async function ensureSchema() { const client = await pool.connect();