首先要明确一个概念:CDN 领域里对应的表述一般是主动预热(主动推送) 和被动缓存(被动推送),二者是 CDN 获取并缓存源站内容的两种核心方式,目标都是让边缘节点存储用户需要的内容、实现就近访问,但触发时机、适用场景和工作逻辑完全不同。
主动预热(主动推送)指由运维人员或业务系统主动发起指令,让 CDN 边缘节点提前从源站拉取指定内容并缓存的方式。
被动缓存(被动推送)指由用户的访问请求触发,CDN 边缘节点被动拉取并缓存源站内容的方式,也是 CDN 的默认工作模式。
| 维度 | 主动预热(主动推送) | 被动缓存(被动推送) |
|---|---|---|
| 触发方式 | 主动发起,人为可控 | 被动触发,用户驱动 |
| 适用场景 | 大文件发布(视频、安装包)、活动预热、热点内容上线 | 日常零散访问的静态内容(图片、普通网页、小文件) |
| 回源压力 | 集中在预热阶段,可自主选择低峰期执行 | 分散在用户首次访问时,高峰期易产生集中回源 |
| 资源占用 | 需提前规划缓存内容,避免无效占用节点空间 | 按需缓存,节点资源利用率更灵活 |
| 用户体验 | 首次访问即可加速,无等待 | 首次访问无加速(等同于直接访问源站),后续才会加速 |
主动预热和被动缓存并非对立关系,而是互补关系,实际 CDN 运维中会结合使用: