Cloud 运行 + Firebase 托管区域重写问题
Cloud Run + Firebase Hosting region rewrites issue
我正在尝试将 Firebase 托管用于连接到云的 CDN 运行。昨天我在 eu-west1 地区测试了一些东西,一切顺利。今天,我尝试做同样的事情,但对于 eu-west4 区域,我收到错误消息,指出该区域不受支持。
我切换到 eu-west1 并且有效。
是这个错误还是不支持 eu-west4 区域?
=== Deploying to 'xxxxxxxx'...
i deploying hosting
Error: HTTP Error: 400, Cloud Run region `europe-west4` is not supported.
"rewrites": [
{
"source": "**",
"run": {
"serviceId": "web-client",
"region": "europe-west4"
}
}
],
新的 asia-southeast1 区域也一样
Error: HTTP Error: 400, Cloud Run region `asia-southeast1` is not supported.
我实际上想出了一种“修复”这个问题的方法。我将区域更改为 europe-west4
而不是之前的 europe-west1
并且“修复”了我的部署问题。
从这个info这里是关于重写的详细信息:
Firebase 托管起源于 us-central1,因此在部署云 运行 时,建议在 select us-central1 地区获得较低的 First Contentful Paint 分数或快速加载您的网站,但会破坏您附近区域可用性目的的优势(对于 google 粉丝来说真的很不幸)。
示例:如果您的位置是印度,您最近的云 运行 可用是 asia-southeast1 新加坡我们不能 select 亚洲-东南1
请求路径是这样的:
你→印度(CDN)→美国(Firebase)→新加坡(Cloud运行+aync 调用 Firestore India)→美国→CDN→你(其中就延迟而言真的很糟糕)。
你→印度(CDN)→美国(Firebase)→美国us-central1(Cloud运行+aync调用Firestore India)→美国→CDN→你
(静态页面加载速度很快,但是 webapp 上的 Firestore 动态数据加载时延迟真的很差,我们应该 select us-central1 Firestore 也没有使用您当地的 GCP 产品,这真的很奇怪,Firebase 托管至少在美国欧洲 ASIA-PACIFIC 区域至少不可用。
结论(截至目前):
Cloud 运行 Firebase 托管的区域重写问题在许多区域都存在,但是,为了获得最佳的页面加载结果,我们应该 select us-central1不幸的是,与重写问题相比,这是真正的问题,为了避免非美国用户的网站 Firestore 延迟,我们应该使用云 run/cloud 功能缓存控制,以便数据将按区域 CDN 缓存在您的 local/near用于快速数据加载(我们不能使用 firebase web SDK,因为如果我们使用 SDK,则无法通过 CDN 缓存,我们应该在 firebase/cloud 运行 中使用云功能)
Firebase 云托管运行 重写可用性(截至 2020 年 8 月 31 日)
可用:
us-central1,
美国东部1,
亚洲东北1,
欧洲西部 1
不可用
亚洲东1,
欧洲北部1,
欧洲西部4,
美国东部4,
美国西部1,
亚洲-东南1
如果您所在的地区云 运行 和 Firebase 托管不可用,请提交 feature request 以获取 Firebase 重写可用性,至少在美国和欧洲 ASIA-PACIFIC 区域不可用。
仅供参考:如果使用 multi-region Firestore,Cloud Firestore multi-region 也不适用于亚洲地区-central1
(如果您获得对上述任何区域的重写权限,请发表评论)
我正在尝试将 Firebase 托管用于连接到云的 CDN 运行。昨天我在 eu-west1 地区测试了一些东西,一切顺利。今天,我尝试做同样的事情,但对于 eu-west4 区域,我收到错误消息,指出该区域不受支持。 我切换到 eu-west1 并且有效。
是这个错误还是不支持 eu-west4 区域?
=== Deploying to 'xxxxxxxx'...
i deploying hosting
Error: HTTP Error: 400, Cloud Run region `europe-west4` is not supported.
"rewrites": [
{
"source": "**",
"run": {
"serviceId": "web-client",
"region": "europe-west4"
}
}
],
新的 asia-southeast1 区域也一样
Error: HTTP Error: 400, Cloud Run region `asia-southeast1` is not supported.
我实际上想出了一种“修复”这个问题的方法。我将区域更改为 europe-west4
而不是之前的 europe-west1
并且“修复”了我的部署问题。
从这个info这里是关于重写的详细信息:
Firebase 托管起源于 us-central1,因此在部署云 运行 时,建议在 select us-central1 地区获得较低的 First Contentful Paint 分数或快速加载您的网站,但会破坏您附近区域可用性目的的优势(对于 google 粉丝来说真的很不幸)。
示例:如果您的位置是印度,您最近的云 运行 可用是 asia-southeast1 新加坡我们不能 select 亚洲-东南1
请求路径是这样的:
你→印度(CDN)→美国(Firebase)→新加坡(Cloud运行+aync 调用 Firestore India)→美国→CDN→你(其中就延迟而言真的很糟糕)。
你→印度(CDN)→美国(Firebase)→美国us-central1(Cloud运行+aync调用Firestore India)→美国→CDN→你
(静态页面加载速度很快,但是 webapp 上的 Firestore 动态数据加载时延迟真的很差,我们应该 select us-central1 Firestore 也没有使用您当地的 GCP 产品,这真的很奇怪,Firebase 托管至少在美国欧洲 ASIA-PACIFIC 区域至少不可用。
结论(截至目前):
Cloud 运行 Firebase 托管的区域重写问题在许多区域都存在,但是,为了获得最佳的页面加载结果,我们应该 select us-central1不幸的是,与重写问题相比,这是真正的问题,为了避免非美国用户的网站 Firestore 延迟,我们应该使用云 run/cloud 功能缓存控制,以便数据将按区域 CDN 缓存在您的 local/near用于快速数据加载(我们不能使用 firebase web SDK,因为如果我们使用 SDK,则无法通过 CDN 缓存,我们应该在 firebase/cloud 运行 中使用云功能)
Firebase 云托管运行 重写可用性(截至 2020 年 8 月 31 日)
可用:
us-central1, 美国东部1, 亚洲东北1, 欧洲西部 1
不可用 亚洲东1, 欧洲北部1, 欧洲西部4, 美国东部4, 美国西部1, 亚洲-东南1
如果您所在的地区云 运行 和 Firebase 托管不可用,请提交 feature request 以获取 Firebase 重写可用性,至少在美国和欧洲 ASIA-PACIFIC 区域不可用。
仅供参考:如果使用 multi-region Firestore,Cloud Firestore multi-region 也不适用于亚洲地区-central1
(如果您获得对上述任何区域的重写权限,请发表评论)