Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Управление кешом - фичареквест
>> а можно сюда добавить еще хидер, например:
>>
>> X-Cache-Invalid: "/users/top/123?all=yes"
>>
>> - определяет что с данного момента определенный набор страниц
>> находящихся в кеше (набор = если несколько таких заголовков выдали)
>> невалиден.
>>
>> Тогда если бакенд выдал такой заголовок (или несколько таких
>> заголовков), чтобы nginx по факту выдачи такого ответа сбросил кеши,
>> связанные с данными урлами?
> удалить элемент из кеша можно директивой
> http://nginx.org/r/proxy_cache_bypass/ru по ключу (т.е. новый элемент
> возмётся не из кеша, но закешируется)
нет это совсем не то что в фичареквесте.
вот имеется nginx.
делаем GET/POST запрос по роуту /route1/path.
в location прописано что кеширование по данному роуту до 30 минут.
бакенд выдает X-Accel-Expires: 120
в ответ nginx создает кеш-запись о /route1/path, затем все последующие
аналогичные запросы к /route1/path приведут к тому что nginx отвечать
будет из кеша в течение 2 минут.
теперь через 40 секунд производится другой запрос
GET/POST итп /route_other/path_other/. этот запрос транслируется может
быть даже другому бакенду.
и вот в обработчике этого запроса производятся какие-то изменения в
БД, которые приведут в частности к тому что по предыдущему роуту
/route1/path бакенд начнет выдавать совсем другие данные.
то есть с момента запроса роута /route_other/path_other/ кеш для роута
/route1/path должен быть сброшен и обработчик /route_other/path_other/
это знает.
я хочу получить механизм внутри обработчика сбросить кеш на другом
роуте.
как вариант - выдать хидер с урлом кеш на котором надо сбросить.
а директивы в конфиге = это не программа это набор условий :)
--
. ''`. Dmitry E. Oboukhov
: :? : email: unera@xxxxxxxxxx jabber://UNera@xxxxxx
`. `~? GPGKey: 1024D / F8E26537 2006-11-21
`- 1B23 D4F8 8EC0 D902 0555 E438 AB8C 00CF F8E2 6537
Attachment:
signature.asc
Description: Digital signature
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|