ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


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


  ПРОГРАММЫ 



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












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

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

Re: FreeBSD & Linux disk AIO support



Igor Sysoev пишет:
On Wed, Aug 26, 2009 at 05:08:35PM +0400, Лазовский Вадим wrote:

Igor Sysoev пишет:
On Wed, Aug 26, 2009 at 02:27:13PM +0400, Dmitriy Timokhin wrote:

2009/8/26 Igor Sysoev <is@xxxxxxxxxxxxx>:
Ещё один патч. Должен работать с glibc 2.7.

В src/os/unix/ngx_linux_config.h не хватает #if (NGX_HAVE_EVENTFD2 ||
NGX_HAVE_EVENTFD) .. #endif вокруг #include <sys/eventfd.h>
Если их добавить -- начинает собираться на glibc2.7
В общем, я решил всегда вызывать eventfd() как сискол.
С этим glibc и двумя разными eventfd() один геморрой.

Патч.
С последним патчем не собирается, при линковке:

objs/src/core/ngx_output_chain.o: In function `ngx_aio_read_file':
/usr/src/nginx-0.8.10/src/core/ngx_output_chain.c:636: undefined reference to `ngx_file_aio_read'
collect2: ld returned 1 exit status
make[1]: *** [objs/nginx] Error 1
make[1]: Leaving directory `/usr/src/nginx-0.8.10'
make: *** [build] Error 2

Новый патч.




Спасибо. С этим патчем все собралось.

Вчера потестировал под линуксом, есть пара вопросов.

Снизил количество воркеров со 100 до 10. Отдача трафика не изменилась (1600М в пике). Замечу, что 100 - количество с огромным запасом, осталось со времен, когда было мало памяти и кеш был неэффективен.

1. Как определить, что вообще используется aio? :) В линуксе есть ядерные нити [aio/N], но они бездействуют.
2. Нормально ли то, что воркеры переходят в состояние D?

PNG image

PNG image



 




Copyright © Lexa Software, 1996-2009.