Project

General

Profile

Bug #40754

Updated by Ernesto Puerta almost 5 years ago

"A Rook issue":https://github.com/rook/rook/issues/3424 might be (still under investigation) caused by a long-term caching of JS assets (dashboard Angular front-end) causing an older version of the front-end to interact with a newer Python back-end. Regardless any discussions on backward compatibility, this behaviour should be reviewed. According to "RFC7234":https://tools.ietf.org/html/rfc7234#page-5, in the absence of cache control headers, it should be assumed that web browsers and HTTP proxies can unconditionally cache contents. @Last-Modified@ headers (added by default by CherryPy) should result in some cache revalidation (10%) but it seems that's not enough. 

 Hence the recommendation is to set "@Cache-Control@ headers":https://tools.ietf.org/html/rfc7234#section-5.2. Let's use this issue to experiment and discuss the specific settings: 
 - @no-cache@ would trigger cache revalidation for every request, so perhaps having a small @max-age@ could work better. 

 !https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/images/http-cache-decision-tree.png! 

Back