ПРОЕКТЫ 


  АРХИВ 


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: Сильная нагрузка на сер вер- стриминг FLV



Hello Андрей,

Monday, October 24, 2011, 3:44:20 PM, you wrote:

АВ> 24.10.2011 14:19, Gena Makhomed пишет:

>> по какой причине этот вариант "почти рейд1" реализованный
>> скриптами и через try_files будет лучше нормального raid1 ?
>>
>> есть ли данные экспериментов linux mdraid + XFS + flv streaming,
>> которые подтверждают, что "независимые" винты будут лучше raid1
>> (нормального (не глючного) програмного или нормального аппаратного)?
>>
>> когда этот вариант будет хуже - я уже писал, если какой-то файл
>> становится очень популярным, то винт с ним становится перегруженным
>> запросами, а все остальные винты при этом будут практически простаивать,
>> и суммарная производительность сервера будет меньше, чем могла бы быть в
>> случае использования нормального, а не "самодельного" raid1 массива.
>>
>> кстати, в raid1 массиве не обязательно должно быть всего 2 винта.
>> вполне может быть 2, 3, 4, 5, 6, 7, ... с соответствующим ростом
>> производительности массива raid1 при множественных random read.
>>

АВ> За рейд1 точно не скажу, потому что не помню как там куски файла 
АВ> отдаются одному клиенту - всегда с одного диска или попеременно с разных 
АВ> дисков, однозначно будет хуже в момент записи, так как запись идет 
АВ> одновременно на все веники, остальные рейды проигрывают однозначно.
Там в комментариях написано:

 460 /*
 461  * This routine returns the disk from which the requested read should
 462  * be done. There is a per-array 'next expected sequential IO' sector
 463  * number - if this matches on the next IO then we use the last disk.
 464  * There is also a per-disk 'last know head position' sector that is
 465  * maintained from IRQ contexts, both the normal and the resync IO
 466  * completion handlers update this position correctly. If there is no
 467  * perfect sequential match then we pick the disk whose head is closest.
 468  *
 469  * If there are 2 mirrors in the same 2 devices, performance degrades
 470  * because position is mirror, not device based.
 471  *
 472  * The rdev for the device selected will have nr_pending incremented.
 473  */

from 
http://neil.brown.name/git?p=linux-2.6;a=blob;f=drivers/md/raid1.c;h=4602fc57c961fd16edc5d558a050493a878fd50e;hb=HEAD#l460

MD(raid) файлами  вообще  не  оперирует, это не его дело, он про них и не знает 
даже. Поскольку mdraid является блочным
устройством,  оперирует  он блоками (внезапно). В каком месте - с дисков и/или 
md device происходит кэширование блоков в
VFS  я  не  знаю, нужно чтоб кто-нибудь посмотрел в исходники из тех кто знает 
C & linux kernel. От этого может зависеть
эффективность раскладывания файла по standalone дискам/raid1.

Заодно, может не все знают, но:
Individual devices in a RAID1 can be marked as "write-mostly".
These drives are excluded from the normal read balancing and will only
be read from when there is no other option.  This can be useful for
devices connected over a slow link.

from 
http://neil.brown.name/git?p=mdadm;a=blob;f=md.4;h=99faad1ac50c48a3592b7ac27e5c1a8d20070923;hb=HEAD#l217

через что, если массив небольшой, можно подключать в пару sata + ssd диски и 
раздача будет вестись с ssd только.

АВ> По
АВ> поводу неравномерной нагрузки - да такое бывает, обычно самые популярные 
АВ> файлы попадают в кеш ОС, если даже и этого не хватает, у меня на этот 
АВ> случай есть скрипт, который перенесет часть активных файлов на другие, 
АВ> менее нагруженные веники, для 1-но гигабитных серверов с 6-ю вениками 
АВ> случаи перегрузки одного веника крайне редки, быстрее все же упирается в 
АВ> канал. Скрипт используется в частности на 5-ти гбитном сервере с 8-ю 
АВ> вениками и даже не по крону или как демон, так как случаи все равно 
АВ> довольно редки.



Best regards,
CoolCold [COOLCOLD-RIPN]

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.