响应过期缓存功能是ESA服务中一项重要的容错和可用性保障措施。主要用于在源站出现异常(4xx、5xx、超时)的情况下,利用ESA节点上已过期的静态资源缓存内容继续提供服务。这样,即使源站短时间出现异常,也能够尽可能确保用户能够访问到网站,提高网站的可用性和用户体验。对于动态资源请求无需开启此功能。
技术原理
适用场景
源站故障或不可用:当源站由于各种原因(如服务器宕机、网络中断、程序错误等)出现故障或不可用时,会导致ESA节点无法从源站获取最新的内容。
-
如果没有启用响应过期缓存功能,ESA节点在收到用户请求时,会向源站发起请求,但由于源站异常,请求可能会失败,导致用户无法访问网站。
-
启用响应过期缓存功能后,即使源站异常,ESA节点也可以将过期的缓存内容返回给用户,保证网站的可访问性。
操作步骤
常见问题
删除源站文件后,为什么响应过期缓存未生效?
响应过期缓存功能仅在源站返回 4xx、5xx 错误码或请求超时的情况下才会生效。如果仅删除了源站上的某个文件,但源站仍能正常响应请求(例如返回 200 状态码的默认页面,或返回 404 状态码),则不属于源站异常的范畴,不会触发响应过期缓存。
如果需要在源站文件删除后仍能通过缓存访问该文件,需确认以下两点:
-
源站确实处于不可达状态(例如源站服务器宕机、网络中断或返回 5xx 错误码),而非仅删除了单个文件。
-
该文件的缓存在删除前已被缓存到边缘节点。如果文件从未被缓存或缓存已被主动刷新,则即使触发了响应过期缓存,也无过期缓存可用于返回。
相关文档
规则相关的功能,在生效优先级、可重入性、生效颗粒度上存在差异,详细情况请查看规则相关功能的特性说明。
