You need to enable JavaScript to run this app.
导航
共享缓存
最近更新时间:2024.09.04 20:10:06首次发布时间:2023.05.26 16:32:08

本文档主要介绍火山引擎内容分发网络(CDN)中的"共享缓存"功能。

该功能目前以白名单的方式对外开放。如果您需要此功能,请提交工单

什么是"共享缓存"

"共享缓存"允许多个加速域名共享同一份缓存。在 CDN 中,您可以创建一个或者多个共享缓存配置。在一个共享缓存配置中,您需要指定"配置域名"以及"目标域名"。指定的"配置域名"将共享"目标域名"的缓存。

适用场景

"共享缓存" 适用于以下场景:

  • 您的多个域名下的文件完全相同。为了降低 CDN 向源站请求文件的次数,您可以对这些域名配置"共享缓存"。

  • 您的站点有多个面向不同用户分发渠道的域名。这些域名所分发的内容是相同的。

当您添加、修改或删除一个共享缓存配置后,"配置域名"请求的缓存命中率可能会下降。具体原因参见 "共享缓存" 的工作方式。请谨慎操作。

"共享缓存"的工作方式

在您创建了一个共享缓存配置后,如果收到某个"配置域名"的一个请求,CDN 按以下流程处理该请求:

  1. 根据"配置域名"下的缓存规则,确定请求的文件是否需要被缓存以及缓存的时长。 如果文件不需要被缓存,CDN 向"配置域名"的源站请求该文件,然后使用该文件响应这个请求。流程结束。

  2. 如果文件需要被缓存,CDN 会将请求的文件 URL 中的域名替换成"目标域名",然后在缓存中查找请求的文件。 如果在缓存中没有找到该文件,转到第 4 步。

  3. 如果在缓存中找到了该文件,CDN 会使用步骤 1 中获取的缓存时长来判断缓存的文件是否已经过期。 如果文件没有过期,CDN 使用该文件响应这个请求。流程结束。

  4. 如果文件已经过期或者 CDN 没有在缓存中找到该文件,CDN 会向"配置域名"的源站请求该文件。

  5. 从源站获取文件后,CDN 将该文件作为"目标域名"的文件进行缓存。流程结束。

"共享缓存"配置会对边缘节点的缓存造成影响,请谨慎进行创建,删除和修改操作。在操作前,请务必阅读注意事项

使用限制

  • 如果某个域名已被设置为其他域名的"目标域名",您无法在任何的共享缓存配置中将该域名设置为"配置域名"。

  • "配置域名"和"目标域名"必须在同一个主账号下。

  • "目标域名"不能是泛域名。

操作步骤

  1. 登录 火山引擎内容分发网络控制台

  2. 在左侧导航栏,点击 配置优化

  3. 域名共享缓存 页面,点击 配置共享缓存

  4. 配置共享缓存 页面,指定一个目标域名,指定一个或者多个"配置域名",然后点击 提交

指定的"配置域名"会共享"目标域名"的缓存。
alt
在您点击 提交 后,您创建的一个共享缓存配置就出现在列表中。

注意事项

在您创建和修改一个共享缓存配置前,建议将"配置域名"与"目标域名"设置成使用相同的源站配置以及缓存键值配置。在共享缓存配置生效后,缓存命中率可以得到提升,也避免出现不正确的缓存文件的情况。

  • 对于"配置域名"的请求,CDN 在缓存中查找文件时,查找的是目标域名下的文件,而非配置域名下的文件。短期内,对于"配置域名"的请求,缓存命中率可能会下降。

  • 在您创建一个"共享缓存"配置后,"配置域名"的缓存就失效了。在您删除一个"共享缓存"配置后,"配置域名"的缓存需要重建。

  • 建议共享缓存配置中的域名使用相同的源站配置。如果不相同,可能会出现以下情况:

    • 不同源站下存在路径相同,文件名相同,但是更新时间或者内容不相同的文件。基于"共享缓存"的工作方式,实际被缓存的文件可能会是来自任意的源站,出现用户获得不正确的文件的情况。
  • 建议"配置域名"的缓存键值配置与"目标域名"的相同,以提升缓存命中率。