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