Re: nginx перестает следить за размером каталога proxy_cache_patch

Maxim Dounin mdounin на mdounin.ru
Вт Май 2 14:31:33 UTC 2017


Hello!

On Tue, May 02, 2017 at 12:35:55PM +0000, Владислав Толмачев wrote:

> Максим, нельзя ли как-то пофиксить это, я искал в гугле и нашел кучу
> проблем аналогичного характера и ни одного решения. У меня nginx занимается
> только проксированием, он без модулей и прочего, абсолютно чистый. Ок не
> смог он удалить 20 этих элементов, возможно там их тормоз качет (хотя если
> их сейчас качают то это уже не самый старый элемент), пусть пробует дальше
> и вернется к ним позже, если в кэше около 2 000 000 элементов. Никаких
> Sigterm и Sigkill перед переполнением точно нет, сервер никтотне трогает в
> это время. В логах critical пусто.

"Тормоз качает" - не должно быть причиной, nginx складывает в кеш 
ответ сразу, как получает его от бекенда, и от клиента тут ничего 
не зависит.  Причиной может быть бекенд - если он кешируемый ответ 
возвращает очень долго.  В старых версиях (до 1.11.6) та же 
проблема могла возникать, если при включённом кеше использовалось 
проксирование без буферизации и/или проксирование вебсокетов - 
элемент кеша оставался залоченным до окончания соединения.

Получить более подробную информацию о происходящем можно, уменьшив 
inactive и добившись очистки по нему, в этом случае в аналогичной 
ситуации будет alert про "ignore long locked inactive cache 
entry".  По идентификатору можно будет узнать, что за ресурс 
вызвал проблему, и проанализировать возможные причины.

-- 
Maxim Dounin
http://nginx.org/


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