需要帮助了解 Firebase 存储 CDN

Fra*_*ani 3 cdn google-cloud-storage firebase google-cloud-platform firebase-storage

我正在构建一个有声读物应用程序并将音频文件上传到 Firebase 存储。我的问题是我在旧金山和多伦多的表现不同。我的印象是 Firebase Storage 具有内置 CDN。如果是这样,我需要在某处启用它吗?如果没有,我如何将 GCP CDN 添加到 Firebase Auth 后面的 Firebase 存储文件中?

检查storage.googleapis.com托管我的 Firebase 存储文件的域表明它正在使用 Google CDN。

以下是我的公共音频文件请求之一的响应标头:

accept-ranges: bytes
alt-svc: quic=":443"; ma=2592000; v="46,44,43,39"
cache-control: public, max-age=3600
content-disposition: inline; filename*=utf-8''G4PT7dPIyEuIz74BtTmm_FallIsTheLastSeasonOfTheYear.mp3
content-length: 3162637
content-type: audio/mp3
date: Tue, 30 Apr 2019 17:13:34 GMT
etag: "98013599e6f108a0edeeaac7c8b2bb45"
expires: Tue, 30 Apr 2019 18:13:34 GMT
last-modified: Mon, 08 Apr 2019 17:59:58 GMT
server: UploadServer
status: 200
x-goog-generation: 1554746398034230
x-goog-hash: crc32c=TKSAfA==, md5=mAE1mebxCKDt7qrHyLK7RQ==
x-goog-meta-firebasestoragedownloadtokens: da578546-c265-4f06-ae11-6273a7812bf2
x-goog-metageneration: 2
x-goog-storage-class: STANDARD
x-goog-stored-content-encoding: identity
x-goog-stored-content-length: 3162637
x-guploader-uploadid: AEnB2UqdvgzkJMC0yHJkGbr-K5cWWbXK5I2j6NLtd4NwG1G9swIhhp1QC8G25JUK4LItZID0IxuYhhLta3YImMTtzbKkr5vcEQ
Run Code Online (Sandbox Code Playgroud)

Fra*_*ani 14

我联系了 Firebase 支持,这是我得到的答案:

关于 CDN 问题,简短的回答是否定的,Cloud Storage 没有内置 CDN;不那么简短的答案是:当您的 Cloud Storage 是“多区域”时,这意味着“热门内容”(经常访问的内容)在不同位置可用,但这仅限于多区域位置,并且仅适用于位置的“管辖权”,例如,如果您的项目在“us-central”,那么您的多区域存储将仅存储在美国数据中心,因此当从多伦多访问时,它将被提供从最近的美国数据中心。

现在,有一些方法可以将 CDN 添加到 Cloud Storage 内容;我使用 Google CDN 找到了这个小指南:https : //medium.com/@marco_37432/create-a-custom-domain-cdn-with-google-beta-7ad9531dfbae

我见过的另一个用途是使用 Cloud Storage 创建一个静态网站,并添加另一个 CDN 提供商,例如 CloudFlare。您可以在此链接中查看更多详细信息:

https://cloudplatform.googleblog.com/2015/09/push-google-cloud-origin-content-out-to-users.html https://cloud.google.com/interconnect/docs/how-to/cdn -互连