就缓存而言,将 Google Cloud CDN 与 Google Storage 结合使用是多余的吗?

问题描述

我最近偶然发现了 Google CDN,并立即对其进行了设置,以将其用作前端图像资产的可缓存 CDN。

现在我的用户个人资料图片一个小问题,它在 Google Storage 中有一些认缓存 - 因此在这种情况下,我将缓存控制标头设置为 this.tagsService.initTagsForFamilyId

当我这样做时,我有点怀疑。我只是在 Google Cloud CDN 中更改了 Google 存储映像 BlobInfo 上的缓存机制。如果我在这里有像双机这样的东西,那就是我的问题出现的地方。一个在 CDN 上,一个在 Google 存储端。

我很确定 Cloud CDN 文档使用 Google Storage 作为示例,因此我认为这应该一起使用。然而现在我有点困惑。

解决方法

事实上,这取决于!例如,如果您的云存储是美国多区域,而您的用户仅在美国,那么 CDN 和云存储的缓存是多余的。

现在,使用相同的配置,您的用户遍布全球,CDN 将在本地缓存内容,将内容缓存到离用户最近的位置。使用 Cloud Storage,缓存将只存在于美国多区域,而不是作为 CDN 的全球范围。

,

下面的回复是已在门户网站上发布的针对查询的答案的扩展

此外,通过 Cloud CDN 缓存的对象不会缓存在 Cloud Storage 缓存中。

与云 CDN 相比,使用云存储缓存存在局限性。

在 Cloud Storage 内置缓存和 Cloud CDN 之间进行选择时,请考虑以下几点:

功能云存储云CDN

最大可缓存文件大小 10 MiB 5TiB(如果源服务器支持字节范围请求)

默认缓存过期 1 小时 1 小时(可配置)

支持自定义域 否 是 通过 HTTPS

缓存失效 否 是

有关缓存的更多信息,请参阅以下链接 https://cloud.google.com/storage/docs/caching#with

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...