scgi_cache_bypass

Директива `scgi_cache_bypass` управляет тем, когда следует обходить SCGI-кэш в зависимости от указанных условий.

Синтаксисscgi_cache_bypass condition;
По умолчаниюnone
Контекстhttp, server, location
Аргументы1+

Описание

Директива scgi_cache_bypass используется для определения условий, при которых кэш SCGI должен обходиться для конкретных запросов. Она принимает один или несколько аргументов, которые могут использовать переменные, такие как headers или server variables, чтобы определить, следует ли игнорировать кэш. Когда условие оценивается в непустое значение, ответ не будет отдаваться из кэша, и вместо этого будет отправлен новый запрос на upstream server. Это особенно полезно для динамического содержимого, которое не должно кэшироваться, гарантируя, что пользователи получают актуальные данные.

Директива действует в контекстах http, server или location, позволяя тонко настраивать поведение кэширования в зависимости от потребностей приложения. Например, если вы хотите обходить кэш для запросов, содержащих определённый cookie или header, вы можете эффективно использовать эту директиву для задания такого условия. Обход кэша также может улучшить производительность в сценариях, где данные часто меняются или являются индивидуальными для пользователя, предотвращая выдачу устаревшего содержимого.

Пользователям следует осторожно относиться к чрезмерному использованию этой директивы, поскольку частый обход кэша может привести к увеличению нагрузки на upstream servers и потенциальному снижению производительности. Это требует тщательного баланса между кэшированием и требованиями к доступу в реальном времени.

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

location /api {
    scgi_pass backend;
    scgi_cache my_cache;
    scgi_cache_bypass $http_cache_bypass;
}

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

Если условие обхода всегда истинно, это полностью сводит на нет преимущества кэширования.

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

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