javascript - mongoose在百度bae長連接中遇到的問題
問題描述
百度bae mongodb不支持長連接,所要進(jìn)行重連機(jī)制。我看網(wǎng)上別人用mongoose.createConnection(),可是我用createConnection()就會(huì)報(bào)錯(cuò),根本連不了但是mongoose.connect()是可以連接的,所以我就寫了一個(gè)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是連接數(shù)據(jù)庫的url!請問大家怎么解決這個(gè)問題呢
問題解答
回答1:1、問題:可是我用createConnection()就會(huì)報(bào)錯(cuò),根本連不了。
var conn = mongoose.createConnection(’your connection string’), MyModel = conn.model(’ModelName’, schema), m = new MyModel; m.save(); // works
使用createConnection的時(shí)候,不能用mongoose.model,請參考上面的栗子。
2、百度bae支持60分鐘的連接,應(yīng)該夠用了吧。
引用的官網(wǎng)信息:公有MongoDB連接建立后如果連續(xù)空閑1小時(shí)無任何活動(dòng),將會(huì)被服務(wù)器端斷開連接。如果在并發(fā)連接數(shù)已達(dá)到配額上限的情況下再發(fā)起建立新連接請求,服務(wù)器端將會(huì)在已有連接中查找是否有空閑30秒以上的,如果有則斷開最近最不活躍(Least Recently Used)的一個(gè)連接并接受新連接請求;否則拒絕新連接請求。請您注意在應(yīng)用代碼中處理長時(shí)間空閑MongoDB連接將會(huì)被斷開的問題。
供參考。
Love MongoDB! Have fun!
2017MongoDB中文社區(qū)北京用戶組大會(huì)在即,2017年6月3日 13:00-18:00
趕緊報(bào)名參加吧!Click Me
相關(guān)文章:
1. Docker for Mac 創(chuàng)建的dnsmasq容器連不上/不工作的問題2. 關(guān)于docker下的nginx壓力測試3. docker - 如何修改運(yùn)行中容器的配置4. angular.js - angularjs的自定義過濾器如何給文字加顏色?5. docker鏡像push報(bào)錯(cuò)6. 關(guān)docker hub上有些鏡像的tag被標(biāo)記““This image has vulnerabilities””7. java - 如何點(diǎn)擊按鈕,重新運(yùn)行(我是初學(xué)者)?8. 前端 - @media query 使用出現(xiàn)的問題?9. html5和Flash對抗是什么情況?10. html - css氣泡,實(shí)現(xiàn)“倒三角(不知道算不算三角了)”可透明的。

網(wǎng)公網(wǎng)安備