В теории, если объект является устаревшим, Вы не хотите подаваемый кэшем - если это не является устаревшим, истечение должно быть установлено дольше...
С другой стороны, Лак распознает, что теория и практика отличаются, таким образом, существует grace
директива в VCL, чтобы я думал, обрабатывает этот случай, а также более прозаическое использование, зарегистрированное в ту страницу.
Да существует, со Сквидом. Mark Nottingham работал над этим в Yahoo, посмотрите это превосходное сообщение в блоге для всех подробностей.
Одна вещь, Сквид 3.0 является довольно большим, переписывают кодовой базы Сквида, вслепую не развертывайте новейшую версию Сквида, но проверяйте сначала, какие версии Сквида имеют эту функциональность. Это не могло бы быть портировано вперед к 3,0.
Я думаю, что womble прав относительно Лака и выполнения этого через Лак' VCL, но я никогда не настраивал что-то вроде этого с Лаком, таким образом, я не могу сказать.
Взлом, который должен работать: Вы могли время от времени генерировать кэшируемую страницу и настраивать 503 обработчика для использования кэшируемой страницы.
Добавьте/Измените по мере необходимости к своему conf:
ErrorDocument 503 /my_cached_page.html
Лак имеет функцию, названную "изяществом", которое позволяет Вам присваивать льготный период, в течение которого будет сохранен объект после того, как TTL истек. Если Ваш бэкенд понижается, Лак служит украшенному (устаревшему) объекту.
Попробуйте:
Да; stale-if-error / макс. устаревший находится в Сквиде 2.7 и 2. ГОЛОВА, но не 3.x (все же).
2.1.0 представленных святых режима, которые работают с изяществом: http://varnish-cache.org/wiki/VCLExampleSaintMode