一般的なCネットワークサーバーの実装では、受け入れ待ちキューのサイズはlistenで設定できます。新しい接続が得られ、キューにスペースがなくなると、ECONNREFUSEDはクライアントに送信されるか、要求は無視されます。GNU/Linuxのaccept pending connectionsキューのサイズを知る
このキューの状態を知る方法はありますか?負荷の高いイベントベースのデーモンでは、クライアントからの再試行がいくつか検出されているため、このキューがいっぱいになって接続試行が無視されている可能性があるため、重要です。
ありがとうございます。 Linuxでの
は、クライアントはECONNREFUSEDエラーが発生するのか?もしそうなら、答えがあります。保留中のキューのサイズを知る方法はありません。 – Simone
正確ではありません。ハンドシェイクが正しく終了せず、サーバはハンドシェイクの最後のACKが失われたようにSYNACKを送信する再試行に入ります。受け入れ保留キューがリッスンで設定された制限から外れたときにこの動作が再現されているため、このキューは疑わしいものです。 –
すべての着信接続を受け入れるのですか? – Simone