On Thursday 20 August 2015 16:40:11 Orlovsky Alexander wrote: > Всем привет! > > Стало интересно сделать утилиту по просмотру nginx кеша на диске, в основном > для: > 1. поиска по ключу (префиксу) / контенту > 2. просмотра TTL-ей и контента > 3. удаления по условию > > 1 и 3-е реализовать кажется очень просто – во всех файлах есть строчка KEY: > blah-blah и после нее идет контент > поэтому я стал разбираться с п.2, нашел такой проект: > https://github.com/perusio/nginx-cache-inspector > Сделал парсинг TTL, как там это реализовано в get_cache_item_ttl, т.е. первые > 16 байт сохраняю в два int32-поля t1 (timestamp) и t2 (? там всегда -1). Я > правда не понял логику автора, почему второе значение вычитается из первого и > на основании этого делается вывод про 404, может у меня такие настройки, но > таких данных в не самом маленьком кеше, взятого с продакшена я не нашел. > Еще не все файлы из кеша, на котором я тестирую свой код, начинаются > одинаково (строками одной длины), формат похоже очень разный. Интересно, > почему так? > > Основной вопрос такой – есть ли где либо описание формата этих кеш файлов > (точнее бинарного заголовка с которого они начинаются)? Я могу заглянуть в > исходники, но надо знать где искать и подсказки бы не помешали. > Может кто-нибудь помочь? >
http://hg.nginx.org/nginx/file/79a50ebb3b89/src/http/ngx_http_cache.h#l117 http://hg.nginx.org/nginx/file/79a50ebb3b89/src/http/ngx_http_file_cache.c#l1212 -- Валентин Бартенев _______________________________________________ nginx-ru mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx-ru
