Hello! On Wed, Jun 21, 2017 at 11:09:00AM +0300, Иван Мишин wrote:
> Максим, кеш дира /tmp/ram/ была забита на 100% 28Гб из 28Гб. Сбросил часть > кеша, получилось 25Гб занято из 28Гб. Затем исправил то о чем ты говорил и > начальный конфиг (приведенный в первом письме) стал выглядеть вот так: > > > proxy_cache_path /tmp/ram/ levels=1:2 use_temp_path=off > > keys_zone=level-1:20m max_size=26000m inactive=1440m; > > proxy_temp_path /tmp/cache/nginx/proxy_temp; > > proxy_cache_key $server_name$request_uri; > > > Т.е. указал nginx что для кеша у него теперь 26Гб, тем самым оставив 2Гб > запас на отвлечение cache manager. > Но по истечении некоторого времени у меня /tmp/ram/ снова забился до 28Гб > из "28Гб. Почему так произошло? Нужен больший запас для cache manager ? Во-первых, если в кеше мусор по результатам старых ошибок, то cache manager не сможет за ним нормально следить: он ничего не знает про мусор, и соответственно не включает его в размер того, что занято кешом. Чтобы привести всё к нормальному состоянию - стоит очистить кеш полностью. Во-вторых, cache manager может не иметь возможности удалять файлы и по другим причинам, в частности - элементы кеша могут оказаться занятыми из-за падений рабочих процессов и/или утечек сокетов. При попытке очистки таких элементов по inactive в лог будут писаться сообщения "ignore long locked inactive cache entry" на уровне alert (в 1.13.1 то же будет происходить и при очистке по max_size). Основное, что бы я рекомендовал сделать в первую очередь - это начать таки заглядывать в логи. Все ваши проблемы наверняка были обозначены там неоднократно и на критических уровнях логгирования. -- Maxim Dounin http://nginx.org/ _______________________________________________ nginx-ru mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx-ru
