使用CDN后如何更新同名文件

本文分享自天翼云开发者社区《使用CDN后如何更新同名文件》.作者:潘****婧

使用CDN后,源站的文件将在CDN节点上缓存。此时如果有同名文件需要更新,可通过如下两种方式:

一、被动更新

被动更新机制指的是通过设置CDN缓存过期时间,实现CDN节点上的文件定期与源站文件进行比对,从而实现更新。

缓存过期时间指源站资源在CDN节点缓存的时长,达到预设时间后,缓存的资源将会被CDN节点标记为缓存过期。此时如果客户端向CDN节点请求该资源,CDN会携带If-Modified-Since请求头或Etag请求头回源站校验内容是否有更新,如有更新则获取最新资源并缓存到CDN节点。用户可以根据业务需求,按指定路径或文件名后缀等方式配置静态资源的缓存过期时间。

二、主动更新

CDN一般会在被动更新的同时,提供主动更新机制。如果源站对某个同名文件进行更新后,希望CDN节点能马上感知到更新,从而让用户实时访问到最新文件,此时可以通过主动刷新来实现。

CDN一般会提供URL刷新、目录刷新和正则刷新三种内容刷新方式。不同刷新方式实现机制稍有不同,但最终都能确保用户访问时获得最新的内容。

  • URL刷新:执行URL刷新请求后,CDN节点会直接删除URL对应的缓存内容,此时,如果客户端向CDN节点请求该内容,节点会回源站获取并缓存新的内容,同时返回给用户。
  • 目录刷新/正则刷新:执行目录或正则刷新请求后,节点缓存将被标记为缓存过期状态(也叫缓存置过期),此时,如果客户端向CDN节点请求该内容,节点会携带If-Modified-Since请求头或If-None-Match请求头回源站校验内容是否有更新。如果源站响应304,说明源站内容未更新,节点则只更新缓存状态不拉取新内容,使用已有缓存响应给用户;如果源站响应200或206,说明源站内容有更新,节点将拉取新内容并缓存,使用新内容响应给用户。
相关推荐
却道天凉_好个秋2 小时前
计算机网络:CDN
学习·音视频·cdn
juxieyiyi8783 小时前
摆脱第三方分成,搭建专属算力管理平台
cdn·pcdn·互联网项目·双收益·pcdn平台搭建双收益
霸刀2 天前
一次“Google 能打开,FlexTV 打不开”的 DNS 故障排查:从 curl 超时到完整证据链
mac·cdn·dns
霸刀2 天前
nslookup 与 dig 使用指南:DNS 查询、区别对比及真实案例解读
linux·cdn·dns
sudebao点com3 天前
一次“Google 能打开,FlexTV 打不开”的 DNS 故障排查:从 curl 超时到完整证据链
windows·macos·https·cdn·dns·nslookup·网络排错
黄俊懿11 天前
【架构师从入门到进阶】第五章:DNS&CDN&网关优化思路——第三节:CDN扩展-多地址直连
网络·计算机网络·架构·系统架构·cdn·dns·架构设计
Mycdn_WD19 天前
项目交付后的机房,能参与边缘节点协作吗?
人工智能·cdn·pcdn·城域网·pcdn资源招募
Patrick_Wilson1 个月前
从一次 Safari 白屏,聊聊 CDN 外置 React 的坑与前端监控盲区
前端·react.js·cdn
姚不倒1 个月前
从 A 记录到 CDN 切换:我的 DNS 认知跃迁之路
运维·cdn·dns
字节跳动视频云技术团队1 个月前
AI Agent 会自己选 CDN 了:当网站访问者从 “人” 扩展到 “AI”,内容分发已升级
人工智能·cdn