nodejs 的一个疑问
2013-10-20 21:56
274 查看
nodeJs连接mongodb数据库,根据服务器的不同生成相应的URL,所以写了个方法:
首先添加引用:
这样,所有需要连接数据库的地方,都需要调用urlFactory.url,也就是createURL方法,肯定是低效的。所以,我本来打算写个缓存之类的,把url暂存起来,省得每次都要重新判断、重新生成。
不过,莫名的问题出现了。无论怎样运行系统,console.log("config database url...");只输出一次!!
这是为什么呢?NodeJs的机制?还是exports的原因?个人猜测是require('mongodb').connect(urlFactory.url, fn);这种链接方式,采用类似session的方式。
先记一笔在这里,以后研究。。。
var createURL = function(){ var mongourl = ""; if(process.env.VCAP_SERVICES){ mongourl = .....; }else{ mongourl = ...; } console.log("config database url..."); return mongourl; } exports.url = createURL();在model层连接数据库,只需直接调用改方法即可
首先添加引用:
var urlFactory = require('./dbFactory');然后,直接调用:
require('mongodb').connect(urlFactory.url, function(err, conn){ //读取 users 集合 conn.collection('users', function (err, collection) { // do something }); });
这样,所有需要连接数据库的地方,都需要调用urlFactory.url,也就是createURL方法,肯定是低效的。所以,我本来打算写个缓存之类的,把url暂存起来,省得每次都要重新判断、重新生成。
不过,莫名的问题出现了。无论怎样运行系统,console.log("config database url...");只输出一次!!
这是为什么呢?NodeJs的机制?还是exports的原因?个人猜测是require('mongodb').connect(urlFactory.url, fn);这种链接方式,采用类似session的方式。
先记一笔在这里,以后研究。。。
相关文章推荐
- run()方法的一个疑问【转载】
- Nodejs实现一个http反向代理
- 一个HelloWorld引发的疑问
- 关于类加载线程 和主线程是否是一个线程的疑问
- nodejs 如何发送一个带JSON的GET请求?
- 读programming application for microsoft windows时产生的一个疑问
- 如何用nodejs创建一个webservice
- 使用nodejs、Python写的一个简易HTTP静态文件服务器
- Nodejs-Koa是一个干净的框架
- 一个MYSQL语句的疑问
- 疑问:同一个结点加入不同的对等组,在不同的对等组中其结点ID是否相同或可以相同?
- 使用nodejs、ejsExcel、express、vuejs编写一个excel转json的工具——第一步:创建vuejs项目并搭建开发环境
- 关于规范,以及一个疑问
- 玩一玩nodejs--一个简单的在线实时填表应用
- 一个html5 + nodejs的游戏
- 分享一个nodejs入门的slide
- Nodejs课堂笔记-第三课 构建一个nodejs的Docker镜像
- C++输出时指针类型自动转换为bool类型输出的一个小疑问
- preg_split 函数的一个疑问?
- nodejs入门——搭建一个聊天室应用