Re: Cache: Invalidation After Updates or Deletions (RFC 2616)
Илья Шипицин Wrote: --- > 13 февраля 2017 г., 18:01 пользователь S.A.N > > написал: > > > Здравствуйте. > > > > Есть потребность в реализации вот такого поведения: > > > > > а если у вас несколько экземпляров nginx ? (варианты - из простых dns > round > robin) > т.е. инвалидируете вы только на одной реплике Это уже другая зона ответственности, сейчас речь не об этом, но если в двух словах - все что можно сделать на одной ноде, можно горизонтально маштабирвать на другие, но общего решения на все случаи нет. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,272373,272375#msg-272375 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Cache: Invalidation After Updates or Deletions (RFC 2616)
13 февраля 2017 г., 18:01 пользователь S.A.N написал: > Здравствуйте. > > Есть потребность в реализации вот такого поведения: > а если у вас несколько экземпляров nginx ? (варианты - из простых dns round robin) т.е. инвалидируете вы только на одной реплике > > > https://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html > Some HTTP methods MUST cause a cache to invalidate an entity. This is > either > the entity referred to by the Request-URI, or by the Location or > Content-Location headers (if present). These methods are: > - PUT > - DELETE > - POST > > Это нужно вот для чего, есть Nginx кеш динамических ответов от бекенда, его > TTL 3 days, URI: /news/top/ > Авторизованный пользователь добавляет новую новость, методом POST на URI: > /news/top/ > Бекенд сохраняет этот контент и отдает клиенту НТТР статус 200. > > В соответствии с RFC 2616, хотелось бы чтобы Nginx, очистил кеш URI: > /news/top/ потому что на этот URI пришел запрос методом POST и бекенд > ответил 200 ОК, что означает что все нормально контент изменился и кеш > этого > URI надо инвалидировать. > > Тоже самое с методом DELETE. > > Вот с методом PUT и заголовком Content-Location можно делать ещё более > крутые штуки, например авторизованный пользователь отправляет PUT запрос на > URI: /news/rest.php?id=150 > Бекенд сохраняет этот контент и отдает клиенту НТТР статус 200 с заголовком > Content-Location /news/150/ и в теле ответа уже новый контент который нужно > сохранить в кеше использую как URI значения заголовка Content-Location > /news/150/ т.е. Nginx должен инвалидировать кеш в ключе которого > использовался URI /news/150/. > > Это очень удобный функционал, и он описан в спецификации, его можно > реализоваь в Nginx? > Спасибо. > > Posted at Nginx Forum: https://forum.nginx.org/read. > php?21,272373,272373#msg-272373 > > ___ > nginx-ru mailing list > nginx-ru@nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Cache: Invalidation After Updates or Deletions (RFC 2616)
Здравствуйте. Есть потребность в реализации вот такого поведения: https://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html Some HTTP methods MUST cause a cache to invalidate an entity. This is either the entity referred to by the Request-URI, or by the Location or Content-Location headers (if present). These methods are: - PUT - DELETE - POST Это нужно вот для чего, есть Nginx кеш динамических ответов от бекенда, его TTL 3 days, URI: /news/top/ Авторизованный пользователь добавляет новую новость, методом POST на URI: /news/top/ Бекенд сохраняет этот контент и отдает клиенту НТТР статус 200. В соответствии с RFC 2616, хотелось бы чтобы Nginx, очистил кеш URI: /news/top/ потому что на этот URI пришел запрос методом POST и бекенд ответил 200 ОК, что означает что все нормально контент изменился и кеш этого URI надо инвалидировать. Тоже самое с методом DELETE. Вот с методом PUT и заголовком Content-Location можно делать ещё более крутые штуки, например авторизованный пользователь отправляет PUT запрос на URI: /news/rest.php?id=150 Бекенд сохраняет этот контент и отдает клиенту НТТР статус 200 с заголовком Content-Location /news/150/ и в теле ответа уже новый контент который нужно сохранить в кеше использую как URI значения заголовка Content-Location /news/150/ т.е. Nginx должен инвалидировать кеш в ключе которого использовался URI /news/150/. Это очень удобный функционал, и он описан в спецификации, его можно реализоваь в Nginx? Спасибо. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,272373,272373#msg-272373 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru