缓存

更新时间:
复制为 MD 格式

当您的站点接入边缘安全加速 ESA后,ESA边缘节点将根据缓存配置的规则来决定是否缓存客户端请求响应的资源文件,边缘节点缓存该文件后,当有其他用户发起相同的文件请求时,可由ESA直接响应,能够有效避免长链路回源情况,以更快的速度为用户响应最新的文件请求,从而减少延迟和提高资源访问效率。当用户请求的内容在缓存节点上不存在或已过期时,ESA会向源站发起回源请求以获取最新的数据。

功能介绍

通过缓存配置功能,您可以对站点执行如下操作。

功能

功能描述

默认缓存规则

在使用边缘安全加速 ESA加速静态资源时,ESA会将源站上的资源缓存到距离客户端最近的ESA节点上。当您访问该静态资源时,可以直接从ESA的缓存节点上获取,有效避免通过较长的链路回源,提高资源访问效率。阿里云ESA的所有节点都包含缓存软件,在用户请求或者源站响应资源经过ESA节点时,缓存软件会根据需要对源站资源进行缓存,并设定缓存过期时间。

全局缓存配置

开发模式

当您需要确保客户端立即获取最新静态资源时,可以启用开发模式。开启后,静态资源请求都将暂时绕过边缘安全加速 ESA的缓存组件,直接转发到源站服务器,便于验证源站内容变更。

浏览器缓存过期时间

浏览器缓存过期时间是指浏览器在本地缓存中保留网页资源(如HTML、CSS、JavaScript文件、图片等)的有效期限,默认遵循源站的Cache-Control头部设置,您可在不修改源站配置的情况下,通过配置客户端浏览器缓存时长,使在有效期内的资源直接从本地缓存加载,从而加快页面响应速度,优化用户体验。

边缘缓存过期时间

边缘缓存过期时间是指源站资源在边缘安全加速 ESA节点中缓存的有效时长,当资源达到预设的缓存过期时间后,将被标记为失效状态,若客户端请求的是已失效的资源,ESA节点会回源站获取最新的资源,并重新缓存至边缘节点,您可根据实际业务需求,按目录或文件后缀名配置静态资源的缓存过期时间,减少源站压力,加快用户访问速度。

查询字符串

边缘节点在处理用户请求生成缓存键(Cachekey)时,设置去除请求URL中携带的?以及?之后的查询字符串(例如:用户身份信息、访问渠道来源等),使携带不同参数的请求 URL 均指向同一份缓存文件,从而提升缓存命中率,缩短页面加载时间。

查询字符串排序

开启查询字符串排序功能后,边缘安全加速 ESA会在处理请求时自动对URL中的查询字符串参数进行排序,然后再根据排序后的查询字符串进行缓存查找或请求转发。这意味着,无论请求URL中的查询字符串的顺序如何,只要参数及其值相同,边缘节点都会将缓存中具有相同查询字符串的文件视为相同的文件。开启该功能有助于提升缓存命中率。

缓存规则

使用规则配置浏览器缓存过期时间

当您需要根据自身需求针对不同规则设置浏览器缓存过期时间时,您可以为每个缓存规则设置不同的缓存策略。

使用规则配置边缘缓存过期时间

当您需对特定请求(如按文件后缀、请求头特征等更精细的维度)设置缓存过期时间时,可创建自定义规则实现区别于全局的边缘缓存TTL策略的差异化配置。

配置状态码缓存过期时间

边缘安全加速 ESA节点从源站获取资源时,源站会返回响应状态码,您可以在阿里云ESA上配置状态码缓存时间,当客户端再次请求相同资源时,由ESA直接响应状态码,不会触发回源,减轻源站压力。当状态码超过设置的缓存时间,会重新触发回源。

自定义Cachekey

开发者可以根据用户请求中的不同部分(例如查询字符串、HTTP请求头或者Cookie等)制定规则来生成自定义缓存键(Cachekey),将访问同一个文件的一类请求转化为统一的Cachekey,避免将同一类请求到同一文件的不同副本,缓存为不同文件的问题,从而提高缓存的命中率,减少请求的响应时间和带宽消耗。

刷新和预热

刷新缓存

通过刷新缓存功能,您可以清除节点上已经缓存的资源,从而让节点回源站获取最新资源。刷新缓存适用于源站资源更新和发布、违规资源清理等场景。需要注意的是,短时间内刷新大量缓存资源会使节点产生较多回源请求,这会给源站带来一定的压力。

预热缓存

通过预热功能,边缘安全加速 ESA会将源站的资源提前缓存到节点,当用户首次请求资源时,能直接从ESA节点获取到缓存的资源,无需再回源站获取。预热功能会提高缓存命中率。

多级缓存

多级缓存是一种高级缓存性能优化技术,边缘安全加速 ESA将源站资源缓存到全球各地不同层级的缓存节点上,使得数据在最接近请求来源的位置被尽可能快地提供,从而提升整体系统的性能和效率。

缓存保持

缓存保持功能用于收敛回源请求,开启后,缓存保持节点将作为您最顶层缓存的节点,这样用户请求通过多层缓存节点架构的收敛之后,ESA将会通过缓存保持节点来回源,从而大幅度减少回源流量。缓存保持节点将会为用户预留存储空间,通过缓存保持节点缓存下来的文件,不会因为文件热度不够而被其他热度较高的文件覆盖。

不同套餐的支持情况

功能分类

详细功能项

免费版(0 元/月)

基础版(9.9 元/月)

标准版(375 元/月)

高级版(3600 元/月)

企业版(联系销售定制)

静态资源加速

全球的静态内容分发

支持

支持

支持

支持

支持

缓存分析

缓存分析

不支持

不支持

支持

支持

支持

缓存配置

边缘缓存过期时间

支持

支持

支持

支持

支持

浏览器缓存过期时间

支持

支持

支持

支持

支持

查询字符串

支持

支持

支持

支持

支持

查询字符串排序

支持

支持

支持

支持

支持

多级缓存

边缘缓存层

支持

支持

支持

支持

支持

边缘缓存层+区域缓存层

不支持

支持

支持

支持

支持

边缘缓存层+智能缓存层

不支持

支持

支持

支持

支持

边缘缓存层+区域缓存层+智能缓存层

不支持

不支持

不支持

不支持

联系销售按需定制

缓存保持

缓存保持

不支持

不支持

不支持

不支持

联系销售按需定制

缓存刷新

URL刷新缓存

1000

10000

50000

100000

500000

按目录刷新缓存

不支持

100

1000

1000

2000

按主机名刷新缓存

不支持

100

1000

1000

2000

按自定义Cachekey刷新缓存

不支持

不支持

不支持

不支持

2000

按去参数刷新缓存

不支持

不支持

不支持

50

2000

按标签刷新缓存

不支持

不支持

不支持

不支持

2000

刷新所有缓存

5

50

80

125

200

缓存预热

即时预热

不支持

10000

50000

100000

500000

定时预热

不支持

不支持

支持

支持

支持

缓存配置

开发模式

支持

支持

支持

支持

支持