Cloudfront support for stale-while-revalidate

17

Are there any plans to support the stale-while-revalidate cache in CloudFront or are there any alternatives to mimic this behavior?

RFC: https://datatracker.ietf.org/doc/html/rfc5861#section-3

There is also a very old post on AWS Forums from 2014, where this question was asked the first time https://forums.aws.amazon.com/thread.jspa?threadID=161496

7 Answers
11

+1 this is a pretty standard feature on most cdns just not cloudfront, so need to know if I need to be looking at alternative providers.

answered 3 years ago
8

+1. I would also very much like this feature, to be able to support Incremental Static Regeneration for our NextJS app. I can also imagine that this is really helpful for the AWS Amplify product since that also supports NextJS and I would therefor think they can use this functionality to support ISR on NextJS as well. tf-next (a zero config terraform module for hosting NextJS apps in AWS) also has GitHub issue related to this.

Overall, this functionality would be really helpful!

answered 3 years ago
5

+1 I've been waiting for over 4 years for this to be supported. For my purposes, it's the feature that that cloudfront is missing that makes fastly a better option for many of my applications. Cloudfront team, please support this header!!

etk007
answered 2 years ago
4

+1 this is a pretty standard feature...

answered 2 years ago
3

+1 this is absolutely required to make it feasible to deploy your NextJS site on AWS behind CloudFront as opposed to on Vercel or Netlify or other competitors.

mish
answered 2 years ago
2

Hey, this really should be added as a feature. Has this been seen at any level of AWS yet?

answered 2 years ago
0

Looks like CloudFront finally started supporting stale-while-revalidate=N some time in April 2023, without any announcement or documentation update. Testing shows that – at least in its current implementation as of Apr 2023 – they don't actually follow the RFC recommendation of not blocking during the revalidation: If, upon expiry of the object, the origin takes 2 seconds to respond with a 502, then the client will also have to wait for 2 seconds while CloudFront completes the origin request. Only after that period will CloudFront serve the stale object.

svenx
answered a year ago
  • Hi, Could advice if any documentation to follow for configuring this parameter in CF?

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions