SQL Server 2012
を実行中の生産環境でホストされているREST API
を通じて通信するWPF application
があります。 WPFアプリケーションはうまくいきますが、何時間かCRUD操作をしても投げていきますUnder Lying Connection Close exception.
私がSQL Services
を再起動するまでは、開発環境でもSQL Express Edition 2012
を実行しています。しかし、開発環境でうまく動作します。しばらくしてから基盤接続に失敗しました
0
A
答えて
1
これが発生する理由はいくつかあります。1)サーバーまたはルーターに、TCP接続を閉じる設定があります。最大オープン時間のように。 2)これは、TCPがパケットを再試行するために保持するテーブルのために、より頻繁に発生します。 TCPは、メッセージを1500バイトのデータグラム(パケットのデータ部分)に分割します。 TCPは送信された各メッセージに対してACKを送信します。パケットがACKを受け取らない場合、再試行の約5秒で通常3〜5回再送されます。パケットはランダムな順序で受信することもできます。したがって、TCPの送信側は、ACKが受信されるまで各パケットをテーブルに保持する必要があります。その後、テーブルからパケットを削除します。受信機は、パケットを並べ替えるためのテーブルを持たなければならない。以前のすべてのパケットが受信されると、パケットはテーブルから削除されます。これらのテーブルは非常に大きくなり、オペレーティングシステムがおそらくアプリケーションを終了します。通常これが起こる原因は、受信側が5秒間にメッセージをACKしない多くのアプリケーションを実行している場合です。したがって、送信側はパケットを再送信します。再送パケットはより多くのデータを送信し、受信機に処理を追加し、受信機をさらに遅くする。問題をチェックする最良の方法は、wiresharkやfiddlerのようなスニファを使用して、再試行を示すパケット番号が重複しているかどうかを確認することです。通常、各パケット番号は2回表示されます(送信されると1回、ACKの場合は1回)。
関連する問題
- 1. WebRequest:基盤となる接続が閉じられました
- 2. Azure Scheduler Job:SendFailure基盤接続が閉じられました
- 3. 接続に失敗しましたか?
- 4. アプリケーションからSQLサーバー接続に失敗しました
- 5. Vugen:ロードランナーからデータベース接続に失敗しました
- 6. DISQUSからエラー503接続に失敗しました
- 7. Windowsサービス基盤プロバイダーがオープンに失敗しました。
- 8. Open:基盤プロバイダがオープン時に失敗しました
- 9. ASP.Net Linq to Entity:基盤プロバイダーがオープンに失敗しました
- 10. BTrDB接続に失敗しました
- 11. Rmysql接続に失敗しました
- 12. RODBC接続に失敗しました
- 13. FTP接続に失敗しました
- 14. インターネットデータ接続に失敗しました
- 15. Mongodb接続に失敗しました
- 16. SMTP接続に失敗しました
- 17. TCP接続に失敗しました
- 18. Redis接続に失敗しました
- 19. 長い時間待ってからソケット接続に失敗しました
- 20. ハンドシェイク失敗でTLSv1接続に失敗しました
- 21. 基になる接続が閉じられました - APIエンドポイント呼び出しが失敗しました
- 22. java.net.ConnectException:localhost/127.0.0.1への接続に失敗しました(ポート8080):接続に失敗しました:ECONNREFUSED ...(コードネームOne App)
- 23. XMPP strophe接続接続プロセスに失敗しました
- 24. c#接続されたホストが応答に失敗したためにgmail接続に失敗しました
- 25. My SQL Error:接続先が正しく応答しなかったため、接続に失敗しました
- 26. サーバーは長いリクエストに対してのみ応答しません。基盤となる接続は閉鎖されました。 ReadResponse()が失敗しました
- 27. Cf接続されたホストが応答に失敗したためログ接続が失敗しました
- 28. 接続されたホストが応答に失敗したためAzure接続が失敗しましたip:443
- 29. Spring IntTestがAtomikosから「接続プールの拡張に失敗しました」
- 30. Inner Transactionscopeエラー:「基盤となるトランザクションマネージャとの通信に失敗しました」