ПРОЕКТЫ 


  АРХИВ 


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 disk AIO support



On Tue, Aug 25, 2009 at 07:24:05PM +0400, Maxim Dounin wrote:

> Hello!
> 
> On Sun, Aug 23, 2009 at 08:11:50PM +0400, Igor Sysoev wrote:
> 
> > Экспериментальный патч для поддержки дискового AIO под FreeBSD.
> > Ядро должно поддерживать AIO:
> > 
> > options  AIO
> > или
> > kldload aio
> > 
> > Настраивается так:
> > 
> > ./configure --with-file-aio ...
> > 
> > location / {
> >     aio  on;
> >     output_buffers  1 128k;
> > }
> > 
> > Возможно, нужно подкрутить следующие sysctl'и:
> > 
> > vfs.aio.max_aio_queue             1024
> > vfs.aio.max_aio_queue_per_proc    256
> > vfs.aio.max_aio_per_proc          32
> > vfs.aio.max_aio_procs             32
> > 
> > Диагностировать текущую AIO загрузку можно с помощью
> > 
> > vfs.aio.num_queue_count
> > vfs.aio.num_aio_procs
> > 
> > Если ядерных aio процессов не хватает или же в ядре нет поддержки aio
> > вообще, то nginx переходит к обычному чтению.
> 
> Just in case it's intresting:
> 
> Без загруженного aio падает по 12-му сигналу (SIGSYS).  Если 
> хочется проверять ENOSYS - SIGSYS надо перехватывать.

Спасибо, поставлю SIG_IGN.

> При загруженном - test suite выполняется штатно (0.8.10 + 
> patch.aio, в конфигах всех тестов добавлено aio on), регрессий не 
> отмечено.  Тестировал на FreeBSD 6.2 и FreeBSD 7.1.
> 
> Под реальной нагрузкой не пробовал.

Вот и славно. Нужно будет ещё sendfile(SF_NODISKIO) туда приспобить.


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



 




Copyright © Lexa Software, 1996-2009.