我正在为项目使用节点并使用连接池,每当查询show processlist
时,即使在每次这样的查询后都释放它,我仍然发现200个以上的睡眠连接-
return new Promise((resolve, reject) => {
sql.getConnection(function (err, conn) {
if (err) {
conn.release();
reject(err)
}
conn.query('QUERY', function (err, rows) {
conn.release();
if (err) {
reject(err)
}
else {
resolve(rows[0])
}
})
})
})
仍然我发现200个以上的睡眠连接。有没有办法通过节点杀死无用的睡眠连接?还是有那么多睡眠连接好吗?
提前感谢!
pool.end(function (err) {
// all connections in the pool have ended
});
[This GitHub issue解释了更多关于释放连接(conn.release()
)和关闭基础连接池(pool.end()
)之间的细微差别。