fastcgi_cache_min_uses

Задает минимальное количество обращений, после которых ответ будет кэшироваться в FastCGI cache. — NGINX HTTP Core

fastcgi_cache_min_uses
httpserverlocation
Синтаксисfastcgi_cache_min_uses number;
По умолчанию1
Контекстhttp, server, location
МодульNGINX HTTP Core
Аргументы1

Описание

Директива `fastcgi_cache_min_uses` задаёт минимальное количество одинаковых запросов к конкретному URI, которое должно быть выполнено, прежде чем его ответ будет помещён в кэш. Это особенно полезно, чтобы избежать кэширования ответов для малопосещаемых конечных точек, гарантируя сохранение в кэше только часто запрашиваемого содержимого. Значение этой директивы должно быть положительным целым числом, так как оно указывает, сколько раз должен поступить запрос к одному и тому же ресурсу до принятия решения о кэшировании ответа. Когда количество запросов к конкретному URI достигает или превышает значение, определённое директивой `fastcgi_cache_min_uses`, для этого ответа срабатывает механизм кэширования. Это помогает оптимизировать поведение кэша, предотвращая занятость кэш-памяти редкими или неактуальными ответами. Директиву можно задать в контекстах `http`, `server` или `location`, что позволяет обеспечить детальный контроль в зависимости от потребностей приложения. Минимизируя потенциальное загрязнение кэша ответами для редко запрашиваемых URI, вы можете повысить производительность приложения и эффективность использования кэш-памяти. Это особенно полезно в сценариях с динамическим содержимым, когда некоторые ответы не должны кэшироваться, если они не запрашиваются часто.

Пример конфига

http {
    fastcgi_cache_path /path/to/cache levels=1:2 keys_zone=my_cache:10m;
    server {
        location /api {
            fastcgi_pass 127.0.0.1:9000;
            fastcgi_cache my_cache;
            fastcgi_cache_min_uses 5;
        }
    }
}

Установка слишком большого значения может привести к недоиспользованию кэша, поскольку редкие запросы вообще могут не кэшироваться.

Убедитесь, что ваш бэкенд способен обрабатывать объём запросов, если кэширование отключено для малоиспользуемых URIs.

Убедитесь, что кэширование включено, иначе эта директива не будет иметь эффекта.