sendfile(2) patch и отдача больших файлов на 7-STABLE amd64

Igor Sysoev is at rambler-co.ru
Mon Feb 2 13:11:09 MSK 2009


On Mon, Feb 02, 2009 at 09:31:29AM +0300, Artemiev Igor wrote:

> On Mon, Feb 02, 2009 at 12:14:15AM +0300, Igor Sysoev wrote:
> > Патч использовался именно на amd64 и то, что sfbufs map'ятся через
> > direct map, это очень хорошо. Вопросы такие:
> > 
> > 1) чему равен MAXPHYS ?
> Пробовал 2 варианта - 1MB и 2MB
> 
> > 2) сколько физической памяти в машине ?
> 8GB
> 
> > 3) что из себя представляет рэйд ?
> 3ware 9650SE-8LPML

Возможно, это из-за конфигурации рэйда.

Тот патч применялся для зеркала из 4 дисков, в этом случае 1М читался
только с одного из четырёх дисков и, таким образом, три других диска
были доступны для других запросов. Памяти было 4G, и большинство запросов
обслуживались из этих закэшированных мегабайтных кусков.

Если же в рэйде этот 1М размазан по нескольким дискам, то все диски
участвуют в обработке одного запроса. Это хорошо, когда у нас однопотоковое
чтение (например, обработка видео), где нужна большая скорость
последовательного чтения. А когда у нас много клиентов, причём достаточно
медленных и читающих из разным мест, то лучше читать крупными кусками
только с одного диска и пытаться как-то оставить эти куски в памяти
на некоторое время.


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





More information about the nginx-ru mailing list