proxy_cache_purge

Gena Makhomed gmm на csdoc.com
Вт Июл 31 13:11:51 UTC 2018


On 30.07.2018 19:59, Igor A. Ippolitov wrote:

>>> Мне кажется, что proxy_cache_bypass легко позволяет замещать контент 
>>> в кэше (что и делает purge, в широком смысле).

>> Замещать существующий контент или добавлять новый - да.
>> Но удалять не позволяет, в этом и состоит (небольшое) отличие.

> Но ведь какой-то ответ на запрос "пурженного" контента всё равно придёт 
> клиенту? Почему бы не закэшить сразу его.

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

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

> Или условную болванку с max-age:0, которая будет обновлена по первому же
> запросу от клиента

и при proxy_cache_use_stale updating; эта болванка будет отдана клиенту.

а proxy_cache_lock действует только при заполнении нового элемента кэша.

> На первый взгляд, PURGE не кажется необходимым средством.
> Хотя, вероятно. может упростить жизнь в каких-то конфигурациях.

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

>>>> Директиву proxy_cache_purge
>>>> можете сделать доступной в open source версии nginx?

-- 
Best regards,
  Gena



Подробная информация о списке рассылки nginx-ru