nodejs的一个疑问-创新互联
nodeJs连接mongodb数据库,根据服务器的不同生成相应的URL,所以写了个方法:
我们提供的服务有:做网站、网站建设、微信公众号开发、网站优化、网站认证、临县ssl等。为上1000家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的临县网站制作公司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的方式。
先记一笔在这里,以后研究。。。
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
网页标题:nodejs的一个疑问-创新互联
链接URL:http://myzitong.com/article/disghh.html