Затыкается отдача статики
Maxim Dounin
mdounin на mdounin.ru
Сб Ноя 28 02:26:43 MSK 2009
Hello!
On Fri, Nov 27, 2009 at 03:54:42PM -0500, kozakd wrote:
> Kostya Alexandrov Пишет:
> -------------------------------------------------------
> > Если Вы уверены что у Вас
> > все летает отлично, зачем
> > тогда подкидываете
> > пищу для мозга?
>
> Летает до неизвестного момента.
> Вот график с провалами http://io.ua/_n/farm.png
> http://io.ua/_n/farm.png
Летает - до тех пор пока заметная часть данных ещё отдаётся из
кеша (в т.ч. кеша самих дисков), а идущее с дисков чтение - более
или менее последовательно. А потом всё уходит в диски, и диски в
свою очередь вместо чтения занимаются позиционированием. В
добавок рабочие процессы на дисковых операциях блокируются, и даже
у того что лежит в кеше быстро отдаться пользователю шансов нет.
Решение - тюнить буфера дабы с диска читалось по возможности
большими блоками (sendfile - выключать, за исключением специальных
случаев которые не относятся к центосу), включать aio чтобы
воркеры не блокировались, включать directio там где кеширование
бесполезно дабы память использовалась там где может принести
пользу, добавлять памяти по необходимости, улучшать дисковую
подсистему сервера.
А, да, там ещё mp4. Выкидывать или переписывать mp4, т.к. он на
каждый запрос занимается чтением файла и поиском в нём
соответствий между временем пришедшим от клиента и позициями в
файле. Штатный flv в этом смысле куда гуманнее относится к диску.
Maxim Dounin
Подробная информация о списке рассылки nginx-ru