Назад | Перейти на главную страницу

Apachebench на сервере node.js возвращает «apr_poll: указанный тайм-аут истек (70007)» после ~ 30 запросов.

Я только начал работать с node.js и проводил экспериментальное нагрузочное тестирование с ab, возвращая ошибку примерно через 30 запросов или около того.

Я нашел другие страницы, показывающие гораздо лучшие показатели параллелизма, чем я, например: http://zgadzaj.com/benchmarking-nodejs-basic-performance-tests-against-apache-php

Есть ли какие-то важные настройки конфигурации сервера, которые необходимо выполнить для достижения этих показателей?

Я наблюдал за памятью сверху, и я все еще вижу приличный объем свободной памяти при запуске ab, также смотрел mongostat и не вижу ничего подозрительного.

Команда, которую я выполняю, и ошибка:

ab -k -n 100 -c 10 postrockandbeyond.com/
This is ApacheBench, Version 2.0.41-dev <$Revision: 1.121.2.12 $> apache-2.0
Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright (c) 2006 The Apache Software Foundation, http://www.apache.org/

Benchmarking postrockandbeyond.com (be patient)...apr_poll: The timeout specified has   expired (70007)
Total of 32 requests completed

Есть ли у кого-нибудь предложения по поводу того, что может вызвать это? Я запускаю его на osx lion, но также выполнил ту же команду на сервере с теми же результатами.

РЕДАКТИРОВАТЬ: в конце концов я решил эту проблему. Я использовал TTAPI, который подключался к turntable.fm через веб-сокеты. На домашней странице я подключалась по каждому запросу. Итак, происходило то, что после определенного количества подключений все разваливалось. Если вы столкнулись с той же проблемой, проверьте, обращаетесь ли вы к внешним службам при каждом запросе.

В соответствии с это сообщение в блоге, это потому, что скамья apache делает HTTP/1.0 запросы, которые заставляют узел закрыть соединение, начиная с узла 0.6+.

Я не знаю почему; это похоже на ошибку узла.

В любом случае, короткий ответ - использовать что-нибудь еще. Я использовал httperf что в любом случае кажется лучше.