November 14, 2013 11:08PM
Для инвалидации кеша, мы планировали использовать такую схему:

fastcgi_cache_valid 200 … 1s;
fastcgi_cache_use_stale error updating http_503;

По истечения 1 секунды, запрос будет идти на бекенд, на котором РНР скрипт определяет изменились данные в БД которые использовались в данном URI с момента предыдущего запроса или нет (для проверки достаточно пару запросов к мемкешу), если данные не изменились, скрипт отдаст ответ с кодом 503, для того чтобы Nginx дальше использовал кеш запроса (cache_use_stale) и так каждую секунду.

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

Но для корректной работы, РНР скрипту необходимо знать что у Nginx есть файл кеша, чтобы знать можно серверу ответить статусом 503 или нет, потому что если файла кеша нет, сервер 503 ошибку от РНР отправит браузеру а этого нам не надо.

Проблема решается если в конфиге Nginx будет добавлена переменная типа - $cache_status которую я буду отправлять на бекенд через
fastcgi_param CACHE_STATUS $cache_status;

Тогда РНР скрипт сможет, точно определять возможность повторного использования кеша если данные не устарели.
Subject Author Posted

Добавить переменую $cache_status

S.A.N November 14, 2013 11:08PM

Re: Добавить переменую $cache_status

S.A.N November 15, 2013 02:11AM

Re: Добавить переменую $cache status

Maxim Dounin November 15, 2013 05:54AM

Re: Добавить переменую $cache status

S.A.N November 15, 2013 06:29AM

Re: Добавить переменую $cache status

Maxim Dounin November 15, 2013 07:20AM

Re: Добавить переменую $cache status

S.A.N November 15, 2013 01:46PM

Re: Добавить переменую $cache status

Valeriy November 16, 2013 02:17PM

Re: Добавить переменую $cache status

Maxim Dounin November 18, 2013 08:58AM

Re: Добавить переменую $cache status

S.A.N November 18, 2013 02:46PM

Re: Добавить переменую $cache status

Gena Makhomed November 18, 2013 04:24PM

Re: Добавить переменую $cache status

S.A.N November 18, 2013 04:54PM

Re: Добавить переменую $cache status

Maxim Dounin November 26, 2013 11:39AM

Re: Добавить переменую $cache status

Maxim Dounin November 18, 2013 09:02AM

Re: Добавить переменую $cache status

kemko November 26, 2013 11:39AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 221
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