Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: балансинг по жестким дискам
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
|