1. 最近、mongodb を操作するために spring-boot と spring-data-mongo を使用しています。
2. 毎朝サーバーのログを確認すると、同じエラーが報告されています。一晩中サーバーにアクセスする人はいないと推定され、翌日誰かがサーバーにアクセスするとエラーが発生します。3. エラー ログは次のとおりです:
リーリー
4. いくつかの解決策を試し、mongodb をリンクするコードを次のように変更しました。 リーリーまた、サーバー (Ubuntu) ipv4 のキープアライブ時間を 120 秒に変更しました。
しかし、エラーはまだ残っています。アドバイスをいただければ幸いです。ありがとうございます。
伊谢尔伦2017-05-31 10:37:10
おそらく MongoDB が Java によって維持されている接続を開始しました (ステータスが CLOSE_WAIT
に変わり、データの送信のみが可能になり、データの受信ができなくなりました)。解決策は次の 2 つの場所から考えられます。
;socketKeepAlive
设成false
ringa_lee2017-05-31 10:37:10
1. クエリ時間が長すぎる可能性があります。プロファイリングまたはサーバーのログ情報を調べて、10 秒を超えるクエリ時間のステートメントを見つけてください。最適化されます。
2. このエラー状況が軽減されるかどうかを確認するには、socketTimeout を適切に増やします。ご参考までに。
MongoDB が大好きです!楽しむ!
Tシャツなどのプチギフトもございます!ふふ!
登録してください