【发布时间】:2014-01-28 16:03:30
【问题描述】:
我正在使用 node.js、express、ORM2 和 Mysql。每次页面加载时都会打开一个新的 mysql 连接。这里的问题是连接没有关闭,它保持打开状态。因此,每个请求都会在我的 mysql“show processlist”命令中产生一个新的“睡眠”状态连接。
谢谢, 拉度
【问题讨论】:
我正在使用 node.js、express、ORM2 和 Mysql。每次页面加载时都会打开一个新的 mysql 连接。这里的问题是连接没有关闭,它保持打开状态。因此,每个请求都会在我的 mysql“show processlist”命令中产生一个新的“睡眠”状态连接。
谢谢, 拉度
【问题讨论】:
实际上,因为我是节点的新手,我没有意识到我的应用程序永远不会结束执行,我必须使用单例方法来连接 mysql。
使用类似的东西:
if (connection) return cb(null, connection);
orm.connect(settings.database, function (err, db) {
if (err) return cb(err);
connection = db;
db.settings.set('instance.returnAllErrors', true);
setup(db, cb);
});
这将只保持一个 mysql 连接打开。
【讨论】: