CentOS 5.5 + nginx + aio

Alex Vorona voron на amhost.net
Ср Окт 13 23:46:55 MSD 2010


12.10.2010 23:07, Maxim Dounin wrote:
> Hello!
>
> On Tue, Oct 12, 2010 at 10:04:05PM +0300, Alex Vorona wrote:
>
>> 12.10.2010 21:31, Maxim Dounin wrote:
>>> Hello!
>>>
>>> On Tue, Oct 12, 2010 at 02:09:08PM -0400, Alex Sergeyev wrote:
>>>
>>>> У меня сейчас нет линуксовых серверов но наверное было бы круто в стиле
>>>> перловых тестов Максима написать тесты на такую утечку...
>>>
>>> Там есть нюансы - тестовый файл не должен быть в кеше.
>> Насколько я понимаю, для данного случая файл не будет браться из
>> кэша из-за directio, без которого aio блокируется на linux.
>
> Во FreeBSD если в кеше есть данные - то они будут использованы, не
> смотря на O_DIRECT.  Не знаю как на линуксе, но если по другому -
> то это скорее недоработка, ибо смысла ходить на диск в этом случае
> нет никакого.
Судя по тестам 2.6.35.7 - идёт на диск
nest VIDEO_TS # dd if=VTS_01_1.VOB of=/dev/null bs=1M count=100
100+0 записей считано
100+0 записей написано
  скопировано 104857600 байт (105 MB), 1,80892 c, 58,0 MB/c
nest VIDEO_TS # dd if=VTS_01_1.VOB of=/dev/null bs=1M count=100
100+0 записей считано
100+0 записей написано
  скопировано 104857600 байт (105 MB), 0,158294 c, 662 MB/c
nest VIDEO_TS # dd iflag=direct if=VTS_01_1.VOB of=/dev/null bs=1M count=100
100+0 записей считано
100+0 записей написано
  скопировано 104857600 байт (105 MB), 1,88156 c, 55,7 MB/c
nest VIDEO_TS # dd if=VTS_01_1.VOB of=/dev/null bs=1M count=100
100+0 записей считано
100+0 записей написано
  скопировано 104857600 байт (105 MB), 0,168449 c, 622 MB/c
nest VIDEO_TS # dd iflag=direct if=VTS_01_1.VOB of=/dev/null bs=1M count=100
100+0 записей считано
100+0 записей написано
  скопировано 104857600 байт (105 MB), 1,89899 c, 55,2 MB/c

>
> Maxim Dounin
>
> p.s. Проблема, надо понимать, совсем не линукс-специфична.

На FreeBSD проблем с aio в ванильном nginx, приводящих к утечкам, я пока не наблюдал. На 
CentOS 5.5 утечек с вашими патчами пока не заметно.



Подробная информация о списке рассылки nginx-ru