İçeriğe geç

Kapatılmayan DB Bağlantısı (ARCH3084)

Anahtar typescript.performance.db-connection-not-closed · Önem error · Kategori performance

Bir veritabanı bağlantısını/imlecini açıp serbest bırakmamak havuzu tüketir ve sonunda yeni isteklerin bağlantı bekleyerek zaman aşımına uğramasına neden olur.

async function count(): Promise<number> {
const client = await pool.connect();
const res = await client.query("SELECT count(*) FROM users");
return res.rows[0].count;
// client havuza geri verilmiyor
}
async function count(): Promise<number> {
const client = await pool.connect();
try {
const res = await client.query("SELECT count(*) FROM users");
return res.rows[0].count;
} finally {
client.release();
}
}

Bağlantıları/imleçleri try/finally içinde release/close ile havuza geri verin.