Установил нгинкс на новом сервере (freebsd 6.1), при тестировании с помощью
ab (ab -c 100 -n 100000 http://localhost/empty.gif) выдает ошибку
"apr_socket_recv: Connection reset by peer (54)". Если поставить ключ -k
(keep-alive соединения) то concurrency (ключ -с - количество одновременных
соединений) можно устанавливать в значение меньше или равно количеству
процессов нгинкса, все работает, более того, на реальных тестах (не пустая
картинка а например, перловый хендлер) все работает при любом concurrency.
Есть так же старый сервер, который отличается от нового процессором (на
новом двуядерный процессор, но я временно убрал опцию SMP из ядра), на
старом сервере все тесты работают правильно на всех версиях нгинкса (0.3.61и
0.5.5).
Какие настройки сервера или нгинкса могут быть связаны с такой работой?
Насколько я понял, такая ошибка встречается у некоторых программ на freebsd
6.x, но нормальных ответов по поводу того что нужно делать так и не нашел.
Имеет смысл проапргрэйдить до 6.2-STABLE - со времён 6.1 была исправлена
бага в kqueue/accept.
Не используется ли случаем pf ?
Игорь Сысоев
http://sysoev.ru