Personal tools
You are here: Home Products CacheFu Roadmap #9: stale-while-revalidate / stale-if-error
Document Actions

#9: stale-while-revalidate / stale-if-error

Contents
  1. Definitions
  2. Motivation
  3. Assumptions
  4. Proposal
  5. Implementation
  6. Deliverables
  7. Risks
  8. Progress log
  9. Participants
by Ricardo Newbery last modified January 7, 2008 - 08:46
Add stale-while-revalidate and stale-if-error Cache Control options
Proposed by
Ricardo Newbery
Proposal type
Architecture
Assigned to release
State
being-discussed

Definitions

 

Motivation

Two new Cache Control extensions proposed by Mark Nottingham of Yahoo

http://www.mnot.net/blog/2007/12/12/stale

 

stale-while-revalidate will signal the cache to serve stale content while sending an asyncronous request back to the origin server to refresh its cache.  It's an elegant way for a cache proxy to refresh without exposing the end user to any backend delay.

 

stale-if-error will signal the cache to serve stale content if the backend response fails.  Not sure if there is a real world usecase for Plone content that could use this feature but the overhead is trivial so adding the option wouldn't hurt.

 

Both of these extensions require cache proxy support.  At the moment, only Squid 2.7 (schedule for release Jan 2008) supports these.

 

Assumptions

 

Proposal

Pretty simple to implement... just add a couple fields to the headerset content type and tweak the header setting code to add them.

I'll leave them off for the default cache policy set until we've had some more history in production.

Also need to add some documentation.

 

Implementation

 

Deliverables

 

Risks

 

Progress log

 

Participants

Ricardo Newbery


For any issues with the web site functionality, please file a ticket.

Please consult the policy on plone.org content if you want your content published on this site.

Servers and hosting by