1

我将我的服务拆分为 Cloud Run 服务,例如在我拥有的博客应用程序userpost服务comment中。

对于每个服务,我在部署时都会获得一个单独的 http 端点,但我想要的是让 api.mydomain.com 作为网关,通过它们各自的路由( 、 等)访问所有这些/user*端点/post*

是否有标准(即 GCP 管理和无服务器)方式来执行此操作?

我尝试过/想到的事情及其问题:

  • 带有重写的 Firebase 托管 - 这是“建议”的解决方案,但它不是很灵活,而且问题更大,我认为这会导致对每个请求进行双重包装 CDN。如果错了,请纠正我,但 Cloud Run 端点已经使用 CDN,那么您可以快速运行 Firebase 托管。像这样不必要地增加成本和延迟似乎很愚蠢。
  • nginx 在一个不断运行的实例上——工作正常,但不是托管的,也不是无服务器的;需要扩大干预措施
  • Cloud Run 上的 nginx - 这似乎具有高度可变的性能,因为有 (a) 两个可能的冷启动,以及 (b) 再次双重包装 CDN。
  • 直接使用 Cloud LB/CDN - Cloud Run 似乎不支持

有任何想法吗?对我来说,这让 Cloud Run 无法用于微服务。希望有办法解决它。

4

0 回答 0