nodejs 如何实现单例

2014-06-17 14:09:28 +08:00
 0x001
比如我相保存我的mysql连接实例,我想保存在一个单例里,因为很多地方需要操作数据库。 这样就可以只需要连接一次。 不是每来一个请求去连接一次数据库。
5788 次点击
所在节点    Node.js
6 条回复
ipconfiger
2014-06-17 14:14:35 +08:00
全局变量
0x001
2014-06-17 14:36:08 +08:00
@ipconfiger 全局变量不太好,因为有好多变量的,我想存在一个统一的地方。
kfll
2014-06-17 14:37:23 +08:00
# db.js

var _con = null;

function getConnection() {
if (null === _con) _con = _connect();
return _con;
}

function _connect() {
// ...
return xxxx;
}

exports.getConnection = getConnection;
canesten
2014-06-17 14:39:01 +08:00
请使用连接池
a15819620038
2014-06-17 22:10:06 +08:00
rekey
2014-06-27 17:34:45 +08:00
require 会缓存结果的,你可以直接初始化,然后 module.exports = 实例。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/117969

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX