Welcome! Log In Create A New Profile

Advanced

Re: purge

Alexandr Sergeyev
July 30, 2010 10:24AM
Игорь,

> В общем, там не особо понятно. Особенно, как именно делается инвалидация.
> Да и многословно как-то - rel="invalidates", rel="invalidated-by":
> напоминает WebDAV.
> Я пару лет назад планировал ленивую инвалидацию большого объёма ответов
> таким образом: в ответ добавляются заголовки с ключами в виде md5-хэшей:

> X-Accel-Depends: XXXXX...md5...XXXXXX YYYYY...md5...YYYYYY ...
> X-Accel-Invalidate: XXXXX...md5...XXXXXX YYYYY...md5...YYYYYY ...

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

Я не считаю link rel= чем то лучшим. Просто если они сделают RFC то неплохо было бы иметь в планах добавить их решения в поддерживаемые аттрибуты инвалидации.

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

Вопрос ещё.... Как вы думаете правильно ли при отправке POST PUT DELETE на конкретный URL инвалидировать его копию (полученную по GET) в кеше? На мой взгляд это совершенно не нужное, но люди с REST API или прочими "стандартными" подходами будут этого ожидать (как собственно и link rel=" на какой то стадии "стандартизирования").


Ещё раз перечитал вашу ленивую инвалидацию и подумал что возможно парсер заголовков и прочие подходы к инвалидации будут медленнее чем что-то описанное раз и навсегда в конфиге... (не возьмусь за верность синтакса просто мысли)

location /admin/ {
proxy_cache_purge accel-invalidate; # чтоб читал X-Accel-Invalidate или link-invalidates чтоб rel...
}

location /[0-9]+/ {
if ($arg_action = "send_comment") {
proxy_cache_purge /path/$some_folder_via_map/comments.xml
}
proxy_cache_purge_depends /path/$some_folder_via_map/comments.xml; # или например название заголовка X-Accel-Depends
}


Может и что-такое для скорости придумать? Запутано конечно выглядит.... Перемудрил?

Но мой вопрос в одном - можно ли сделать быструю инвалидацию фронтэндом так или парсинг заголовков в любом случае произведён и нет ничего сложного чтоб их и использовать?




Саша.
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

purge

Igor Sysoev July 29, 2010 05:00AM

Re: purge

Roman Mashirov July 29, 2010 05:22AM

Re: purge

Igor Sysoev July 29, 2010 05:24AM

Re: purge

Igor Sysoev July 29, 2010 05:30AM

Re: purge

Roman Mashirov July 29, 2010 05:56AM

Re: purge

Igor Sysoev July 29, 2010 06:04AM

Re: purge

Roman Mashirov July 29, 2010 06:28AM

Re: purge

Igor Sysoev July 29, 2010 11:16AM

прокси в nginx

Bdfy July 29, 2010 08:32AM

Re: прокси в nginx

Sergey Shepelev July 29, 2010 09:00AM

Re[2]: purge

Влад Максимов July 29, 2010 06:06AM

Re[2]: purge

Михаил Монашёв July 29, 2010 09:36AM

Re: purge

Igor Sysoev July 29, 2010 11:12AM

Re: purge

Yuriy Taraday July 29, 2010 06:04AM

Re: purge

Igor Sysoev July 29, 2010 11:20AM

Re: purge

Alexandr Sergeyev July 29, 2010 06:52AM

Re: purge

Igor Sysoev July 29, 2010 11:18AM

Re: purge

Alex Sergeyev July 29, 2010 12:36PM

Re: purge

Igor Sysoev July 29, 2010 03:26PM

Re[2]: purge

Михаил Монашёв July 29, 2010 05:54PM

Re: purge

Igor Sysoev July 30, 2010 02:48AM

Re[2]: purge

Михаил Монашёв July 30, 2010 03:38AM

Re[3]: purge

Михаил Монашёв July 30, 2010 03:46PM

Re: purge

Alexandr Sergeyev July 30, 2010 10:24AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 229
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready