srcache_store_ranges

Директива `srcache_store_ranges` управляет тем, будут ли кешироваться range-запросы с использованием прозрачного метода кэширования subrequest.

Синтаксисsrcache_store_ranges on | off;
По умолчаниюoff
Контекстhttp, server, location
Аргументыflag

Описание

Директива srcache_store_ranges используется в конфигурациях NGINX для указания, сохранять ли ответы на range-запросы в кэше при использовании механизма кэширования, основанного на subrequest, предоставляемого модулем ngx_srcache. Когда включено (установлено в 'on'), NGINX сохраняет ответы на range-запросы в кэше, что особенно полезно, когда клиенты запрашивают частичное содержимое ресурса, например медиафайлов. Это может привести к повышению производительности, поскольку сервер сможет обслуживать последующие range-запросы непосредственно из кэша, минимизируя нагрузку на бэкенд и улучшая время отклика.

Когда srcache_store_ranges установлена в 'off', ответы на range-запросы не сохраняются, что означает, что каждый range-запрос пересылается на upstream-сервер, независимо от того, доступна ли в кэше полная версия ресурса. Настройка чувствительна к контексту и может быть объявлена в блоках 'http', 'server' или 'location'. Поведение контролируется простым флажком, что упрощает изменение поведения кэширования для range-запросов в конкретных контекстах вашей конфигурации NGINX.

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

location /files { 
    srcache_store_ranges on;
    srcache_store 200; 
    # other configurations ... 
}

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

Настройка нескольких уровней кэширования может привести к непредвиденному поведению; убедитесь, что вы понимаете взаимодействие между этими слоями.

Эффективное кэширование медиафайлов с помощью этой директивы требует внимательного отношения к заголовкам ответа, таким как 'Content-Length'.

← Ко всем директивам