gpt4 book ai didi

javascript - 使用node杀死所有休眠的mysql池连接

转载 作者:行者123 更新时间:2023-11-28 03:05:33 25 4
gpt4 key购买 nike

我正在为我的项目使用 Node 并使用连接池,每当我查询 show processlist 时,我都会发现超过 200 个 sleep 连接,即使我在每次查询后都会释放它 -

    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 多个 sleep 连接。有没有办法通过 Node 杀死无用的 sleep 连接?或者有这么多 sleep 连接可以吗?

提前致谢!

最佳答案

如果您使用连接池,则需要close all the connections in the pool当您使用完它们后。否则,连接将保持打开状态,直到被 MySQL 服务器关闭为止。

pool.end(function (err) {
// all connections in the pool have ended
});

This GitHub issue详细解释了释放连接 (conn.release()) 和关闭底层连接池 (pool.end()) 之间的细微差别。

关于javascript - 使用node杀死所有休眠的mysql池连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60647812/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com