如文档中所述,使用 App Engine 全局部署 nodejs

global deployment of nodejs with app engine as described in the docs

在此 article 中,Google 描述了 nodejs 应用程序在 App Engine flex 中的全局部署。

此图来自文章。

问题是我的理解是这不可能有两个原因。

  1. 无法在 GCLB 中访问跨项目资源来创建 bakend 服务。

  2. 无法从 GAE Flex 中查看实例组来创建烘焙服务。

我的第一个想法是通过 nginx 运行 在单独项目的每个区域的计算引擎实例上代理所有请求。

我该怎么做?

感谢您的帮助。

正如您所提到的,该图的问题在于,虽然 App Engine Flex 实例实际上 运行 在您的项目中,但您看不到它们,并且您不能将它们用作全局的后端负载均衡器。事实上,这个图是错误的,不能按原样实现。我已请求更新文档以更正该问题。

正如您还提到的,一种解决方法是通过同一区域中的 Compute Engine 虚拟机 运行 代理对 App Engine 的请求。但这不是最佳选择,可能会引入单点故障。

由于 App Engine Flex 实际上 运行s Docker 虚拟机上的容器,您可以使用 Google Kubernetes Engine 实现类似的设置,优点是您可以 运行 每个地区一个集群,都在同一个项目中。