
视频文件体积大、并发请求多、对启动时延和带宽抖动敏感。使用CDN可以把热点内容分发到边缘节点,缩短网络路径,降低首屏启动延迟,减少回源带宽和源站压力,从而提升用户体验和降低成本。
边缘缓存能显著提高缓存命中率;分布式节点能吸收并发高峰;就近调度减少跨网运营商长距离传输导致的抖动。
缓存命中指边缘节点直接返回内容而不去源站回源的比例,常用命中率=(边缘命中请求数 / 总请求数)。高命中率直接降低回源流量与源站负载。
提升措施包括:合理设置Cache-Control/Expires,分段切片(HLS/DASH)使小文件更易命中,使用一致的缓存键并剔除无关查询字符串与Cookie,启用预热/预取和边缘缓存保留策略(stale-while-revalidate、stale-if-error)。
把媒体清单(manifest)与分片的TTL区分设置,常变的清单短TTL或走回源,稳定的.ts/.m4s分片设长TTL。
缓存键决定哪些请求能被同一缓存条目复用。合理的缓存键通常包括URI路径、文件名、必要的查询参数(如range id)和Host,但应剔除用户跟踪用的随机参数与Cookie。
对于HLS/DASH,建议对manifest和分片采用不同的键策略:manifest保留版本号参数,分片忽略跟踪参数并根据分辨率/码率分组。对ABR(自适应码率)要确保相同分辨率的客户端能命中相同分片。
启用负载均衡或多CDN时,同步缓存键规则,避免因键不一致导致重复回源和缓存碎片化。
回源控制策略包括限流、批量回源(Origin Shield)、回源排队(thundering herd 控制)、预热与缓存降级策略。Origin Shield 在某个中间节点汇总回源请求,能大幅减少源站并发。
结合stale-while-revalidate可在后端更新时仍返回过期缓存,避免短时间内大量请求穿透回源。对低频冷数据可使用更长的TTL并在回源时采用限速与带宽峰值控制。
针对更新场景,使用版本化URL(文件名带版本号)是最简单且高效的方式,能避免逐条失效。对于必须即时生效的改动,可使用精确的PURGE/Invalidate API,并在边缘设置短期保留或立即跳过缓存。
另外,采用异步回源与通知机制(origin-push 或 CDN API 告警)配合缓存预热,可以在内容发布前先把热点分片下发到边缘,减少首次访问回源。