javascript - mongoose在百度bae长连接中遇到的问题
问题描述
百度bae mongodb不支持长连接,所要进行重连机制。我看网上别人用mongoose.createConnection(),可是我用createConnection()就会报错,根本连不了但是mongoose.connect()是可以连接的,所以我就写了一个mongoose.connect()重连版本`var db = mongoose.connection;db.on(’error’,function(error){
mongoose.disconnect();
})db.on(’disconnected’, function() {
mongoose.connect(config.mongo, {server:{auto_reconnect:true,poolSize:10}});
});mongoose.connect(config.mongo, {server:{auto_reconnect:true,poolSize:10}});`里面的configh.mongo是连接数据库的url!请问大家怎么解决这个问题呢
问题解答
回答1:1、问题:可是我用createConnection()就会报错,根本连不了。
var conn = mongoose.createConnection(’your connection string’), MyModel = conn.model(’ModelName’, schema), m = new MyModel; m.save(); // works
使用createConnection的时候,不能用mongoose.model,请参考上面的栗子。
2、百度bae支持60分钟的连接,应该够用了吧。
引用的官网信息:公有MongoDB连接建立后如果连续空闲1小时无任何活动,将会被服务器端断开连接。如果在并发连接数已达到配额上限的情况下再发起建立新连接请求,服务器端将会在已有连接中查找是否有空闲30秒以上的,如果有则断开最近最不活跃(Least Recently Used)的一个连接并接受新连接请求;否则拒绝新连接请求。请您注意在应用代码中处理长时间空闲MongoDB连接将会被断开的问题。
供参考。
Love MongoDB! Have fun!
2017MongoDB中文社区北京用户组大会在即,2017年6月3日 13:00-18:00
赶紧报名参加吧!Click Me
相关文章:
1. css - 浏览器开发者工具怎么审查keyframe动画2. javascript - Vue v-on:click绑定多个方法,只触发第一个方法3. javascript - svg小白,想要在svg里面插入图片4. html - IOS二维码识别问题5. nginx - 关于vue项目部署到ngnix后出现的问题6. javascript - 如何像new Date()取当前时间一样取服务器时间?7. 冒昧问一下,我这php代码哪里出错了???8. mysql - JAVA怎么实现一个DAO同时实现查询两个实体类的结果集9. angular.js - 在移动端web上如何解决输入法挡住文本框问题?10. android - 哪位大神知道java后台的api接口的对象传到前端后输入日期报错,是什么情况?求大神指点