搜尋

首頁  >  問答  >  主體

mongodb - mongoose 資料庫連線問題

資料庫連線(暫時寫在app.js)

var options = {
  server: {
    poolSize: 100,
    auto_reconnect: true,
    keepAlive: 10
  }
}

var db = mongoose.connect(settings.MONGODB_URL,options);

問題:

1.批量插入數據,一段時間後就會出現:

MongoError: connection 95 to xxx.xxx.xxx timed out

2.當出現上面錯誤的時候,所有相關的資料庫操作就不運作了,是程式與資料庫的連線斷了嗎? 是資料庫連線設定的不對,還是可能是資料庫的問題?

3.當我進行高併發的ab測試後,也會出現上面2的現象,是什麼原因呢?是連接池相關設定的不正確嗎?

给我你的怀抱给我你的怀抱2761 天前603

全部回覆(1)我來回復

  • 我想大声告诉你

    我想大声告诉你2017-05-02 09:24:49

    首先要注意連接池問題,mongoose.connect只應該呼叫一次,其傳回的物件維護了連接池,如果重複呼叫則會不斷地開啟和關閉連接,非常影響效能。
    確認之後要看一下你給的壓力有多大,是否已經佔用完了所有可用的資源,可以看一下mongodb的log,有多少同時打開的連接。也可以看一下機器的資源剩餘狀況。

    回覆
    0
  • 取消回覆