#9: stale-while-revalidate / stale-if-error
- Contents
- 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