Re: балансинг по жестким дискам

Gena Makhomed gmm at csdoc.com
Tue Jan 13 17:51:36 MSK 2009


On Tuesday, January 13, 2009 at 12:02:20, Монашёв Михаил wrote:

>> за  один  раз nginx считает с диска не более sendfile_max_chunk байт
>> когда  он  обратится  к  диску за следующим chunk`ом этого же файла,
>> (при  высокой  нагрузке)  -  исходный диск к тому моменту уже успеет
>> обработать  несколько  других  запросов  на  чтение  chunk`ов других
>> файлов,  надо  будет  снова  производить  операцию  позиционирования
>> головок диска.

ММ> Это  не  совсем так. У SAS винтов есть TCQ, которая выстроит запросы к
ММ> диску  в оптимальную очередь.

TCQ управляет очередью запросов к одному диску,
код mdraid - распределяет запросы между дисками.

если вместо логики mdraid используется балансировщик round-robin,
тогда запросы по всем дискам будут разбросаны в случайном порядке.

и тогда "привязка" файлов к дискам оказывается эффективнее полностью
случайного/равномерного распределения запросов по всем дискам массива.

но я не вижу причин, почему метод "жесткой" привязки файлов к дискам
должен быть эффективнее алгоритма работы linux mdraid software raid-1.

ММ> Количество и время сиков TCQ увеличивает очень значительно.

TCQ их уменьшает (оптимизирует) в меру своих возможностей.

>> или же проблема в том, что GEOM слишком сильно абстрагируется
>> от дисковой подсистемы, - он ничего не знает про позиционирование
>> головок жесткого диска и поэтому load всеравно будет неоптимальным?

-- 
Best regards,
 Gena






More information about the nginx-ru mailing list