On Mon, 4 Oct 2004, Konstantin N. Bezruchenko wrote:
> IS> http://sysoev.ru/nginx/
> IS> Документации пока мало.
> IS> Мэйл-листы пока не готовы, если Лёха не против, то можно спрашивать здесь.
>
> Очень заинтересовал Ваш проект. Сразу скачал и натравил на него ab :-)
> так как интересуют сервера без проблем отдающие большие объемы
> статики.
>
> Условия были следущие: 5000 req при 100 conccurency, в 5 подходов.
> Выведены средние числа. Размер документа 6254 bytes
>
> Результаты:
>
> 1. nginx
> Time taken for tests: 14.215 seconds
> Requests per second: 351.74 [#/sec] (mean)
> Time per request: 284.30 [ms] (mean)
> Time per request: 2.84 [ms] (mean, across all concurrent requests)
> Transfer rate: 2297.01 [Kbytes/sec] received
>
>
> 2. mathopd
> Time taken for tests: 8,936 seconds
> Requests per second: 559,72 [#/sec] (mean)
> Time per request: 178,72 [ms] (mean)
> Time per request: 1,78 [ms] (mean, across all concurrent requests)
> Transfer rate: 3643,77 [Kbytes/sec] received
>
> У mathopd отрыв приличный.
> Но стоит отметить что при использовании nginx загрузка процессора в пике
> была в 3 (!) раза меньше чем у mathopd.
Предлагаю померить conccurency, скажем, 1000 или 5000, да ещё с keep-alive.
У mathopd при большем числе keep-alive соединений появляются проблемы - он
начинает кушать процессор. Я бенчмарков никаких не делал, так как сервер
писал не для бенчмарков, а для реального использования. А реальное
использование показало следующее - на images.rambler.ru (P3-650) nginx
обрабатывает 1200r/s, держит 20,000 keep-alive соединений и кушает ~50%
процессора. До этого там стоял mathopd/1.4, которого научили kqueue и sendfile,
но он на 10,000 keep-alive соединениях ел практически весь процессор и
обрабатывал 1000r/s.
На какой ОС, кстати, тестировалось ?
Игорь Сысоев
http://sysoev.ru