Я играю с веб-сервером, используя сокет unix и sendmsg / recvmsg, чтобы передать дескриптор файла сокета новому процессу сервера без потери каких-либо запросов. При тестировании его с помощью ab я обнаружил, что клиентские соединения будут задерживаться, и apachebench (ab) отобразит ошибку: «apr_poll: истекло указанное время ожидания (70007)».
Я подозревал, что в адресе файлового дескриптора было изменено, что сделало бы открытые соединения бесполезными, однако проверка того, что соединения были закрыты в конце каждого запроса, не имела значения, пара запросов потерпеть неудачу.
Есть ли какая-то лишняя странность на уровне сокетов или это просто странно? Что-нибудь еще, что я должен принять во внимание?
Редактировать: Использование PHP в качестве клиента для выполнения запросов также останавливается во время цикла.