你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

在 Azure 媒体服务中管理 Azure CDN 缓存策略

重要

Microsoft Azure CDN Standard(经典版)将于 2027 年 9 月 30 日停用。 为了避免任何服务中断,请务必在 2027 年 9 月 30 日之前将 Microsoft Azure CDN Standard(经典版)配置文件迁移到 Azure Front Door Standard 层或 Premium 层。 有关详细信息,请参阅 Microsoft Azure CDN Standard(经典版)停用

Edgio 的 Azure CDN 将于 2025 年 1 月 15 日停用。 为了避免服务中断,必须在此日期之前将工作负载迁移到 Azure Front Door。 有关详细信息,请参阅 Edgio Azure CDN 停用常见问题解答

Azure 媒体服务提供基于 HTTP 的自适应流式处理和渐进式下载。 基于 HTTP 的流式处理是高度可缩放的功能,具有可以在代理和 CDN 层中缓存以及在客户端缓存的优点。 流式处理终结点提供常用的流式处理功能以及针对 HTTP 缓存标头的配置。 流式处理终结点设置 HTTP Cache-Control: max-age 和 Expires 标头。 可以从 W3.org 获取更多有关 HTTP 缓存标头的信息。

默认缓存标头

默认情况下,流式处理终结点会对按需流式处理数据(实际的媒体片段/块)和清单(播放列表)应用缓存三天的标头。 如果是实时流式播放,流式处理终结点会对数据(实际的媒体片段/块)应用缓存三天的标头,对清单(播放列表)请求应用缓存 2 秒的标头。 当实时播放节目转为按需(实时存档)播放节目时,则会应用按需流式处理缓存标头。

Azure CDN 集成

Azure 媒体服务为流式处理终结点提供集成 CDN。 Cache-control 标头的应用方式与流式处理终结点到启用 CDN 的流式处理终结点的应用方式相同。 Azure CDN 使用流式处理终结点配置的值来定义内部缓存对象的生存期,并使用该值来设置交付缓存标头。 使用启用了 CDN 的流式处理终结点时,建议不要设置小的缓存值。 设置的值过小会降低性能,导致无法充分利用 CDN。 不允许将启用了 CDN 的流式处理终结点的缓存标头设置为小于 600 秒。

重要

Azure 媒体服务支持与 Azure 内容分发网络的完整集成。 只需单击一下即可将所有可用的 Azure 内容分发网络提供商集成到流式处理终结点(包括标准版和高级版产品)。 有关详细信息,请参阅此公告

只有在通过流式处理终结点 API 启用 CDN 或使用 Azure 门户的流式处理终结点部分时,才会禁用流式处理终结点到 CDN 的数据费用。 如果进行手动集成,或者使用 CDN API 或门户部分直接创建 CDN 终结点,则不会禁用数据费用。

使用 Azure 媒体服务配置缓存标头

可以使用 Azure 门户或 Azure 媒体服务 API 来配置缓存标头值。

  1. 若要使用 Azure 门户配置缓存标头,请参阅如何管理流式处理终结点部分配置流式处理终结点。
  2. Azure 媒体服务 REST API,StreamingEndpoint
  3. Azure 媒体服务 .NET SDK,StreamingEndpointCacheControl Properties

缓存配置优先顺序

  1. Azure 媒体服务配置的缓存值将覆盖默认值。
  2. 如果没有进行手动配置,将应用默认值。
  3. 默认情况下,不管 Azure 媒体或 Azure 存储的配置如何,缓存 2 秒的标头适用于实时流式处理清单(播放列表),无法覆盖此值。