【发布时间】:2022-02-26 05:16:52
【问题描述】:
由于大多数 CDN 仅在缓存数据到期后才更新缓存数据,如果在此之前更新源服务器会怎样。 CDN 是否会提供旧数据直到到期更新?
【问题讨论】:
标签: amazon-cloudfront cdn cloudflare akamai fastly
由于大多数 CDN 仅在缓存数据到期后才更新缓存数据,如果在此之前更新源服务器会怎样。 CDN 是否会提供旧数据直到到期更新?
【问题讨论】:
标签: amazon-cloudfront cdn cloudflare akamai fastly
一般情况下,他们有一个回调方法让您知道内容是否更改并需要更新/重新缓存。所以它不会在下次刷新之前提供旧内容。
您可以查看Cloudflare-Purge Cache 和Azure 的文档。
【讨论】:
是的,即使来源已更新,CDN 也会提供较旧的内容。这是因为没有人真正告诉 CDN 在源头有更新的资产。
有几种方法可以确保 CDN 始终缓存最新的资产。最简单的方法是每次有新的/更新的资产时清除缓存。这可以内置到您的 CI/CD 管道中,以便每次部署新版本时都会自动清除
我看到很多人做的另一种方法是在 URL 本身中添加一个版本。因此,当资产更新时,它会有一个新版本作为对象名称的一部分。所以当浏览器发出请求时,它会自动请求新对象。
希望这会有所帮助。
【讨论】: