2

すべての接続がTIME_WAIT状態であるために、接続が不足するという問題がありました。タイムアウトを1に設定しても、問題が発生しました。ロードバランサーを使用しているので、リサイクルの代わりにtcp_tw_reuseを使用しました。tcp_tw_reuseをオンにする必要があるコードをリリースします。

ただし、tcp_tw_reuseにはマイナスの影響があると思いますが、どうなるかはわかりません。Linuxインストールでこれがデフォルトでオンになっていない理由を誰かが知っていますか?

または、誰かが潜在的な悪影響をリストできますか?接続がなくなるまで、これはシステムに影響を与えないと思います。接続がなくなると、この必要性は明らかです。

ありがとう。

4

2 に答える 2

2

今日、これに関する素晴らしい記事を見ました。これは、この質問に出くわした人なら誰でも持つべきだと私が思った、本当に詳細な回答を提供します。

http://vincent.bernat.im/en/blog/2014-tcp-time-wait-state-linux.html

それを確認した後、tcp_tw_reuse を使用するために行った変更は着信接続にも影響を与えないように見えるため、私の元の解決策は私の側では無益な変更だったようです。

于 2014-05-02T16:39:13.437 に答える
1

TIME_WAIT 状態は、TCP の不可欠な部分です。これは、同じポート番号間の 2 つの連続した接続からのデータが混同されるのを防ぐためのセキュリティ/データ整合性の手段です。あなたは確かにそれをいじってはいけませ。発生する可能性がある唯一の問題は、アウトバウンド接続を作成するときのバインド エラーです。最終的には、接続プールを使用する必要があり、使用していないアプリケーションが原因です。

于 2012-11-29T20:57:24.143 に答える