【问题标题】:Firebase Hosting adding ~450ms latency overhead to Cloud RunFirebase 托管为 Cloud Run 增加了约 450 毫秒的延迟开销
【发布时间】:2021-11-19 05:09:26
【问题描述】:

我有一个 Firebase 托管站点,该站点将 /api 路径映射到 Cloud Run 应用,如下所述:https://firebase.google.com/docs/hosting/cloud-run

将通过 Firebase 托管访问我的 API 端点时获得的延迟与直接访问 Cloud Run 应用进行比较,Firebase 托管平均增加了 450 毫秒的延迟。该应用托管在us-west1,我位于西雅图地区。

% hyperfine --warmup 3 'curl -H "Authorization: $AUTH" https://staging.radiopaper.com/api/exchange'
Benchmark #1: curl -H "Authorization: $AUTH" https://staging.radiopaper.com/api/exchange
  Time (mean ± σ):     660.9 ms ±  85.2 ms    [User: 25.0 ms, System: 10.5 ms]
  Range (min … max):   575.5 ms … 856.9 ms    10 runs

% hyperfine --warmup 3 'curl -H "Authorization: $AUTH" https://api-server-klkjcchm4q-uc.a.run.app/api/exchange'
Benchmark #1: curl -H "Authorization: $AUTH" https://api-server-klkjcchm4q-uc.a.run.app/api/exchange
  Time (mean ± σ):     212.5 ms ±  72.7 ms    [User: 27.8 ms, System: 9.9 ms]
  Range (min … max):   124.3 ms … 325.6 ms    11 runs

这是预期的行为吗?如果是这样,那么在与静态内容相同的域上运行 Cloud Run 应用程序对我来说没有多大意义。

【问题讨论】:

  • 这绝对不是预期的行为,但它可能由于多种原因而发生。我认为在 stackoverflow 上对这个问题没有太大帮助,因此我建议您直接向 GCP 支持提出请求。如果您没有支持合同,可以免费联系Firebase support
  • 您可能希望使用默认的 Firebase 域“*.firebaseapp.com”进行测试,以过滤出与 DNS 提供商有关的任何问题。
  • @GouravB,我用 firebase 托管域重复了实验,同样的 ~400ms 差异。
  • @ZeenathSN,听起来不错 - 我将整理一组最少的步骤来使用标准的“echo-server”测试容器进行重现并提交错误。

标签: firebase-hosting google-cloud-run


【解决方案1】:

这绝对不是预期的行为,但可能由于多种原因而发生。原因之一可能是 Firebase 托管的来源在收到请求后必须返回到 Cloud Run,因此通过 Firebase 托管的路由涉及多个跃点。我们正在努力改善这一点,但目前还没有任何具体内容可以分享。

GCP 支持在这里!如果您想对此进行分类,我们将需要具体的详细信息来找到根本原因,因此我建议您直接向 GCP 支持提出请求。如果您没有支持合同,可以免费联系Firebase support

【讨论】:

    猜你喜欢
    • 2017-07-24
    • 2020-04-05
    • 1970-01-01
    • 2018-08-25
    • 1970-01-01
    • 1970-01-01
    • 2021-01-08
    • 2021-12-29
    • 1970-01-01
    相关资源
    最近更新 更多