私はmongodbで予期せず閉じられた接続をたくさん探してきましたが、接続を閉じたい人からの質問しか見つけることができません.
node-mongodb-native を使用してデータベースに接続していますが、一見ランダムな「エラー: 接続が閉じられました」というメッセージが表示され続けます。リクエストを手動で再試行すると(ブラウザの更新)、リクエストは機能します。
これの原因は何ですか?役立つ簡単なオプションはありますか?
次を使用してdbハンドルを取得しています:
MongoClient.connect(connection_string, { auto_reconnect: true }, function (err, db) {
//server code/routes in here
}
私はhttps://github.com/mongodb/node-mongodb-native/blob/master/lib/mongodb/connection/server.jsを調べていましたが、接続プールが一般的にどのように管理されているかについての私の限られた理解が私をつまずかせていることに気づきました上。サーバーの存続期間中、それらは開いたままになるという印象を受けました。誰か助けてくれませんか?
編集: mjhm のコメントを読んだ後、私は TCP キープアライブをより深く調べ始めました。これが Azure の行為である可能性があることを示唆するいくつかのサイトに出くわしました (そして、この質問は現在誤分類されています!)。どうやら、Azure ロード バランサーは 1 分間のアクティビティ後に接続を切断するようです。私は Azure Websites を使用しているため、当てはまる場合と当てはまらない場合がありますが、この洞察は新しい調査を開始するのに十分有望だと思います。詳細はこちらhttp://blogs.msdn.com/b/avkashchauhan/archive/2011/11/12/windows-azure-load-balancer-timeout-details.aspx