РИТ: Высокие нагрузки vs Highload++

Igor Sysoev is at rambler-co.ru
Thu Sep 18 23:41:04 MSD 2008


On Wed, Sep 17, 2008 at 02:30:49PM +0400, Igor Sysoev wrote:

> On Wed, Sep 17, 2008 at 01:12:28PM +0300, MZ wrote:
> 
> > В вт, 16/09/2008 в 22:05 +0400, Igor Sysoev пишет:
> > 
> > > > sendfile думаю уже выключен ? )))
> > > 
> > > Да, хотя у меня есть идея, как выдавать столько же sendfile'ом.
> > > Очень уж он память экономит (и процессор, хотя это не столь критично
> > > в данном случае).
> > > 
> > Очень интересно! Можете рассказать суть идеи ?
> 
> sendfile подгружает файл блоками по 64К. Это мало. Есть идея сделать
> это настраиваемым.

В общем, научили мы sendfile читать по 2M:

#sysctl kern.ipc.sfreadahead
kern.ipc.sfreadahead: 2097152

и правильно кэшировать частоиспользуемое (1190M Active):

CPU states:  0.3% user,  0.0% nice,  0.9% system,  2.6% interrupt, 96.3% idle
Mem: 1190M Active, 2271M Inact, 341M Wired, 140M Cache, 214M Buf, 8908K Free

  PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME   WCPU COMMAND
 1278 nobody      1   4    0 12704K  4420K kqread 1   0:20  0.00% nginx
 1266 nobody      1   4    0 12704K  4396K kqread 1   0:16  0.00% nginx
 1267 nobody      1   4    0 12704K  4348K kqread 1   0:15  0.00% nginx

Итого, имеем на данный момент:

 L(q)  ops/s    r/s   kBps   ms/r    w/s   kBps   ms/w   %busy Name
    0      7      7   6650   23.7      0      0    0.0   16.6| ad16
    0      7      7   8376   24.8      0      0    0.0   17.3| ad18
    0      7      7   8376   26.8      0      0    0.0   18.8| ad20
    0      7      7   8504   25.0      0      0    0.0   17.5| ad22
    0     28     28  31907   25.1      0      0    0.0   52.7| mirror/dat

В 3-4 раза можно вырасти.

Памяти под сетевые буфера всего 4M:

3092K/632K/3725K bytes allocated to network (current/cache/total)


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





More information about the nginx-ru mailing list