使用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,说明源站内容有更新,节点将拉取新内容并缓存,使用新内容响应给用户。
相关推荐
Patrick_Wilson12 天前
从一次 Safari 白屏,聊聊 CDN 外置 React 的坑与前端监控盲区
前端·react.js·cdn
姚不倒14 天前
从 A 记录到 CDN 切换:我的 DNS 认知跃迁之路
运维·cdn·dns
字节跳动视频云技术团队17 天前
AI Agent 会自己选 CDN 了:当网站访问者从 “人” 扩展到 “AI”,内容分发已升级
人工智能·cdn
Linsk18 天前
2026年了,请停止相信“公共 CDN 能提升性能”
前端·jquery·cdn
锐速网络1 个月前
游戏加速、DNS加速、CDN网络加速三者选型指南
cdn·网络优化·网络运维·游戏加速·dns加速·运维选型·长连接加速
锐速网络1 个月前
CDN视频加速集群部署与性能调优
cdn·网络优化·视频加速·流媒体加速·直播cdn·cdn集群部署·锐速安全
mCell2 个月前
别急着骂运营商,你家路由器里可能藏着一台 PCDN 盒子
前端·http·cdn
云安全干货局2 个月前
怎么选择靠谱的CDN服务品牌?主流品牌性能对比及加速效果解析
cdn·安全加速·云加速·业务加速·edge scdn
SEO_juper2 个月前
CDN 地域节点优化:匹配 GEO 信号,提升加载速度
服务器·ai·php·seo·cdn·geo·谷歌优化
Love Song残响2 个月前
PowerSetting下载慢?CDN加速 + 离线包分发综合优化方案
cdn