ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 

  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА














     АРХИВ :: Apache-Talk
Apache-Talk mailing list archive (apache-talk@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re[4]: [apache-talk] nginx-0.1.0



On Mon, 4 Oct 2004, Konstantin N. Bezruchenko wrote:

>
> Hello Igor!
> Monday, October 4, 2004, 11:17:28 PM, you wrote:
>
> >> Вообщем впечатление от nginx очень положительное. Только возможно
> >> стоило бы немного наплевать на CPU и немного увеличить скорость отдачи
> >> документов. Надо же хоть как-то использовать современные вычислительные
> >> мощности ;-)
> >>
> >> Сейчас примусь тестировать по схеме которую посоветовал Игорь.
>
> IS> На самом деле, сравнивать nginx с mathopd или boa некорректно,
> IS> так как nginx может работать с kqueue, epoll и прочая.
> IS> В синтетических тестах mathopd или boa могут работать хорошо, а
> IS> поставишь их на реальных клиентов, тут-то poll и select начинают
> IS> есть процессор. Тестировать нужно с большим числом неактивных соединений.
>
> Да я это прекрасно понимаю. У меня как раз есть неплохой полигон для
> тестов как "синтетических" так и реальных. Сразу после "синтетических"
> я обязательно смотрю на поведение того или иного сервера в реальной
> ситуации.
>
> И само собой что при использовании poll и select процессор кушается.
> Но я уже отметился выше, что в моем конкретном случае CPU не является
> критичным. Пусть он будет кушать много - но зато отдавать быстрее чем
> другие. Пока я остановился на mathopd.

Скорость отдачи имеет смысл только, если ответ целиком помещается
в ядерный буфер (в случае FreeBSD это net.inet.tcp.sendspace).
При бОльших ответах скорость зависит от клиента, а в реальной жизни таких
быстрых клиентов, как в тестах, немного.

Кроме того, если отдавать контент, который не помещается целиком в физическую
память сервера, например, фильмы или диски, то процесс(ы) сервера будут
блокироваться на дисковых операциях.

> Но выход Вашего продукта меня заинтересовал и я вновь оживился в
> поисках решений.
>
> IS> А сравнивать нужно с серверами, которые понимают kqueue и тому подобное:
>
> IS> thttpd:     http://www.acme.com/software/thttpd/
> IS> cherokee:   http://0x50.org
> IS> lighttpd:   http://jan.kneschke.de/projects/lighttpd/
> IS> gatling:    http://www.fefe.de/gatling/
> IS> 0W:         http://0w.ru/httpd/
>
> IS> Причём при тестировании хорошо бы сделать, скажем, 10,000-20,000
> IS> неактивных соединений, kqueuе и её аналоги с таким числом соединений
> IS> справляются легко. Запросов можно делать по паре сотен одновременно.
> IS> Файло хорошо бы взять по-больше, что бы тест шёл подольше - несколько
> IS> минут.
>
> Да, спасибо за советы, сейчас я этим и займусь.
> Попробую в нескольких вариантах с kqueue и без нее, c sendfile и без.
> Попробую нарисовать для себя более подробную картину.

И обязательно тестируемый и тестирующий должны быть на разных машинах.


Игорь Сысоев
http://sysoev.ru



 




Copyright © Lexa Software, 1996-2009.