27 августа 2013 г., 18:47 пользователь Maxim Dounin <[email protected]> написал: > Hello! > > > Судя по backtrace'у, nginx честно ждёт новых собитий в ядре. > Возможно, "кушать процессор" - это побочный эффект от нехватки > ресурсов из-за большого количества завершающихся процессов? Штатно, 4 ядра, гипертрединг выключен, 8 процессов nginx. Нагрузка на CPU до 30% (суммарно по всем 8 процессов, т.е до 4% каждый).
Как только даешь сигнал HUP, воркеров становится 16. 8 умирающих процессов в течении 10 секунд плавно набирают CPU usage до максимума ресурсов Держатся в таком состоянии столь угодно долго - 3 часа точно могут висеть. Видео для наглядности http://ascii.io/a/5172 > > Имеет смысл либо походить по коду в gdb, либо посмотреть на > картину с помощью ktrace + kdump -T. Ну и на банальный top тоже > имеет смысл посмотреть внимательно. Ок, попробую нарыть больше информации для диагностики. И воспроизвести в минимальной конфигурации. > > Note: рабочие процессы завершаются только тогда, когда закончена > обработка всех запросов. Соответственно долгоживующие запросы a > la проксирование websocket'ов - могут долго препятствовать > завершению рабочих процессов, тем самым приводя к их накоплению. Да, вполне устраивает что старые процессы могут жить еще сутки. Но при этом, по идее, старые воркеры должны со временем потреблять все меньше и меньше процессора. Но, не наоборот. _______________________________________________ nginx-ru mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx-ru
