limit_req_module постоянно в 503

Volkov Oleg nginx at teratelecom.ru
Mon Dec 15 13:12:51 MSK 2008


В сообщении от Sunday 14 December 2008 14:24:38 Alrond написал(а):
> Игорь,
> обнаружил при тестировании что при использовании limit_req_module
> и обычных параметрах как в примере интересный эффект возникает.
> Тестировал только при ограничении rate=1r/s
> Если просто браузером рефрешить, то все нормально, в зависимости от
> скорости нажатий выдает некоторое количество страниц с кодом 503, но если
> запустить, например, "ab -n1000", то состояние 503 не уходит потом долго
> после теста, я честно говоря даже дождаться не мог.
> так было задумано (очередь?) или это ошибка?

А я тестировал при rate=5r/s и rate=50r/s.
	limit_req_zone $binary_remote_addr zone=reqs:20m rate=50r/s;
	limit_req zone=reqs burst=100; (для статики)
	limit_req_zone $binary_remote_addr zone=reqd:20m rate=5r/s;
	limit_req zone=reqs burst=10; (для апачей)
Все работало нормально при маленькой нагрузке на хостинг в целом.
Если не считать что в логи попадали страницы со статусом 0, при этом в 
error_log (уровня error) ничего не было.

Когда нагрузка на хостинг выросла я поставил 500 (это для отдачи статики)
	limit_req_zone $binary_remote_addr zone=reqs:20m rate=500r/s;
	limit_req zone=reqs burst=1000;
при этом я заходил с индивидуального IP и видел пустые страницы на сайтах.
В итоге, я убрал эти строчки и ситуация частично нормолизовалась.
Окончательно все починилост когда я полностью убрал все limit_req

версия 0.7.22

У меня подозрение, что 20m просто не хватило для хешей и проявились глюки.

PS: про статус 0 я уже писал в рассылку ранее
пожалуйста обратите внимание на проблему.

-- 
С уважением,
Волков Олег.
Терабит Телеком.






More information about the nginx-ru mailing list