使用单个存储桶优化页面加载

Optimising page loads using a single storage bucket

我有一个 Google 云存储桶 mywebsite-static。由于浏览器对 的限制,我想创建多个 DNS 记录,以便我可以使用 static.mywebsite.comstatic2.mywebsite.com 等访问此存储桶中的文件

docs推荐添加CNAME记录,但桶名必须与CNAME匹配。当静态内容发生变化时,将内容保存在一个存储桶中可以节省 synchronising/updating 多个存储桶,而且比存储相同静态内容的多个副本要干净得多。

有什么方法可以创建多个 DNS 记录以访问单个存储桶?

不单独使用 GCS。但是,使用 Google Cloud Load Balancing,您可以设置全局转发规则,这些规则全部映射到单个后端 GCS 存储桶。这将为您提供一个 IP 地址,您可以根据需要将其映射到任意多个 DNS 名称。 https://cloud.google.com/compute/docs/load-balancing/http/global-forwarding-rules

Load Balancer 是一个强大的工具,也可用于换出您从哪个 GCS 存储桶提供服务,或者让您从 GCE 或其他服务动态地提供一些目录。

缺点是对于您的用例来说可能有点矫枉过正,配置它有点复杂,而且全局转发规则并不便宜,但它可以完成工作。查看其他选项来改进您的网站可能更容易,例如 CSS 精灵表。

作为该线程提示中的一些答案,如果您使用的是 HTTP 2.0,则并行连接问题不是问题。您可以将 HTTP 2.0 与 GCS 一起使用,只要您通过 HTTPS 访问它即可。这意味着使用 https://storage.cloud.google.com/bucket/object, https://bucket.storage.cloud.google.com/object 或 GCLB+后端存储桶。 HTTPS 不适用于 CNAME,因为 GCS 没有该域的证书。