Unixソケットとsendmsg / recvmsgを使用して、リクエストを失うことなくソケットファイル記述子を新しいサーバープロセスに渡すWebサーバーで遊んでいます。ab でテストしているときに、クライアント接続が長続きし、apachebench (ab) がエラー「apr_poll: The timeout specified has expired (70007)」を表示することがわかりました。
ファイル記述子のアドレスに変更があり、開いている接続が役に立たなくなるのではないかと疑っていましたが、すべての要求の最後に接続が閉じられていることを確認しても違いはなく、いくつかの要求が失敗しました。
ソケットレベルで何か特別な奇妙な点がありますか、それとも ab は単に奇妙ですか? 他に考慮すべきことはありますか?
編集:PHPをクライアントとして使用してリクエストを行うと、サイクル中に失速します。