通过刷新功能,您可以删除CDN节点上已经缓存的资源,并强制CDN节点回源站获取最新资源,适用于源站资源更新和发布、违规资源清理、域名配置变更等;通过预热功能,您可以在业务高峰前预先将热门资源缓存到CDN节点,降低源站压力提升用户体验。
功能介绍
刷新:把CDN所有节点上对应的缓存资源标记为失效,当用户再次请求时,CDN会直接回源站获取对应的资源并返回给用户,同时将资源重新缓存到CDN节点。刷新功能会降低缓存命中率。
预热:源站主动将对应的资源缓存到CDN节点,当您首次请求资源时,即可直接从CDN节点获取到最新的资源,无需再回源站获取。预热功能会提高缓存命中率。
适用场景
功能 | 适用场景 |
刷新 |
|
预热 |
|
注意事项
缓存刷新注意事项:
大批量提交刷新任务会清空较多缓存,导致回源带宽和请求突增,这会增加源站压力,建议在网站流量的低峰时期操作。
刷新任务从提交到生效,大约需要5~6分钟,如果文件或者目录配置的缓存过期时间少于5分钟,您无需执行刷新操作,等待文件或者目录缓存超时更新即可。
URL刷新、目录刷新和正则刷新都已支持共享缓存。在域名配置了共享缓存的情况下,使用主域名或者任意一个关联域名来提交刷新任务,都可以刷掉缓存。
缓存预热注意事项:
提交预热任务并成功执行后,CDN节点会立即回源站加载所需资源,因此大批量提交预热任务会生成较多的并发回源任务,导致回源带宽和请求突增,建议在网站流量的低峰时期操作。
每个账号的预热队列最大为100,000条URL,CDN根据URL提交的先后顺序进行预热;当预热队列中待预热的URL达到了100,000条时,CDN将会拒绝接收新的预热任务。
预热任务从提交到预热完成,实际执行时间视预热文件大小而定,大约需要5~30分钟,文件平均大小越小,预热速度越快。
共同注意事项:
URL刷新、缓存预热任务一旦下发成功,在任务执行完之前无法停止。
使用RAM用户刷新和预热需先获得授权,请参见授予RAM用户刷新预热权限完成授权。
刷新和预热都有每日配额,详情敬请参考下方对应操作的介绍。如果您的阿里云账号的日带宽峰值大于200Mbps,您可以通过配额管理申请提升每日配额,阿里云将根据您业务的实际需求进行评估和配置。
更多关于刷新和预热的注意事项和问题,敬请参见刷新和预热相关常见问题。
如果您在配置CDN之后,访问速度较慢或资源无法访问,建议先参见推荐的文档进行问题排查和处理,然后再使用刷新功能更新CDN中的资源,详情敬请参见使用阿里云CDN加速后网站访问速度较慢排查。
刷新或预热资源
刷新资源
登录CDN控制台。
在左侧导航栏,单击刷新预热。
在刷新缓存/预热缓存页签,选择操作类型为刷新。
选择对应的操作方式:URL、目录、正则。
在URL中输入或上传要处理的数据。
单击提交。
查看刷新进度。
说明如果您在OSS控制台开启了CDN缓存自动刷新,则无法通过CDN控制台查看OSS的缓存自动刷新任务。
操作方式 | 相关介绍 | 注意事项 |
URL | URL刷新,即单个文件刷新。需要输入单个文件完整的URL路径。包含协议头、域名、路径、文件。例如:https://www.example.com/static/picture/earth.jpg |
|
目录 | 通过您输入的URL路径,刷新目录下的所有文件。需要输入完整的URL目录,结尾必须以/结尾。包含协议头、域名、路径。例如:https://www.example.com/static/picture/ |
|
正则 | 通过带有正则表达式的URL进行过滤刷新,如果您输入的URL命中了正则表达式,则会进行刷新。例如:http://www.example.com/static/picture/[0-9][a-z].*.jpg |
|
预热资源
登录CDN控制台。
在左侧导航栏,单击刷新预热。
在刷新缓存/预热缓存页签,选择操作类型为预热。
选择对应的操作方式URL。
在URL中输入或上传要处理的数据。
单击提交。
查看预热进度。
操作方式 | 相关介绍 | 注意事项 |
URL | URL预热,即单个文件预热。需要输入单个文件完整的URL路径。包含协议头、域名、路径、文件。例如:https://www.example.com/static/video/earth.mp4 |
|
自动化刷新或预热
如果您需要自动化刷新或预热,请参见使用自动化脚本刷新和预热。
验证刷新或预热结果
方法一
在操作记录页签中查看资源刷新或预热的详细记录和进度。进度为100%,表示任务执行完成。预热数量多会影响预热进度,请您耐心等待。
方法二
执行如下命令,查看预热任务的执行状态。
# 这里请替换为您刷新或预热的URL
curl -I 'http://example.aliyundoc.com/test.json'
系统显示类似如下。
预热是指将资源预热到L2节点,如果L2状态为"H",即表示预热成功。图中Via的前半部分代表L2节点状态,其中的“H”表示命中,说明文件已经预热到L2节点,不需要再回源站。Via的后半部分代表L1节点的状态,“M”表示L1节点上没有缓存,需要向L2节点回源。
方法三
调用DescribeRefreshTaskById,查询刷新状态和预热状态是否生效,详情请参见DescribeRefreshTaskById - 查询刷新预热任务-按ID。
常见问题
相关API
您可以调用API接口,实现资源的刷新和预热,敬请参考刷新和预热API。