Re: Прокомментируйте пожалуйста результат модуля StubStatus

Maxim Dounin mdounin на mdounin.ru
Ср Дек 1 16:42:58 MSK 2010


Hello!

On Wed, Dec 01, 2010 at 08:18:27AM -0500, vadlm wrote:

> Получил вот такой результат:
> 
> Active connections: 12196 
> server accepts handled requests
>  17276 17276 29657 
> Reading: 83 Writing: 1 Waiting: 12112 
> 
> очень смущает количество active connections и
> waiting. А так же writing: 1 - иногда доходит до
> 3-8, а так все время держиться на уровне 1.

Waiting - это keepalive.  Writing - соединения, в которых 
заголовок запроса прочитан целиком и началась обработка.  Reading, 
соответственно, - соединения, в которых читаем заголовок запроса.
Active - сумма всех соединений.

> При том подозреваю, что writing: 1 это как
> раз мой запрос статистики. 

Да.

> Мой модуль относительно долго
> обрабатывает запрос (парсит, генерит
> картинку, пишет в файл). Т.е. получается,
> что nginx быстро отдает сформированный
> буфер, а все остальное время читает из
> active connections и обрабатывает?

Нет, все соединения, для которых работает модуль - будут в 
состоянии writing.

Но надо понимать, что если обработка полностью блокирующаяся - то 
таких соединений не может быть больше, чем рабочих процессов 
nginx'а.  Все остальные будут висеть в reading/waiting (или вообще 
в listen queue сокета), пока у nginx'а не появится возможность 
узнать, что в них что-то произошло.

> Правильно ли я понимаю цифры? И чего
> такая большая очередь, хотя вроде судя
> по логам ничего не теряем?
> Буду рад любым соображениям по этому
> поводу.

См. выше.

Maxim Dounin



Подробная информация о списке рассылки nginx-ru