如何使用Google Cloud Endpoints(网关)在单个api端点中从多个微服务(云运行容器)创建组合响应?

问题描述 投票:0回答:1

我熟悉Firebase平台,但相对来说,我是整个Google云平台的新用户。我正在开发一个使用微服务结构构建的项目,但确实有很多问题无法找到答案,或者更好的是找不到任何示例。不幸的是,我能够找到的所有示例都是简单的方法,可以为我的问题推断出可行的答案。

我采用了新的云运行产品,因此我决定使用完整的托管版本(不是kubernetes)。我构建了一些微服务(每个服务都是使用express用于节点或flask用于python来构建-取决于服务的功能)。每个微服务都公开其自己的端点,并具有自己的api来调用方法-并且我使用服务帐户来允许应用程序执行内部调用。

我现在想将应用程序公开给外部(特别是使用vuejs技术构建的客户端),并且我试图利用另一种Google产品来创建和公开api:谷歌端点。

我的问题(特别是指云运行结构)与创建api端点以与客户端应用进行通信,内部调用多个服务并将它们的响应组合为一个的可能性以及如何做有关。] >

请明确说明,让我们举个例子:

  • 云运行服务1-> Crud用户api

  • 云运行服务2->原始产品API

  • 云端点外部可见api->从服务1获取用户,然后从服务2获取产品,并返回组合响应给用户Jane Doe所有绿色产品。

  • 如何直接在端点网关中聚合响应,检查是否失败,以及一切是否顺利将聚合响应发送给客户端?

我需要以其他方式构建聚合端点,例如云功能?还是可以直接在Google端点网关中完成?

请注意,对于云运行,谷歌端点是另一个云运行容器。

感谢大家的帮助,这里的选项几乎用完了。

我熟悉Firebase平台,但相对来说,我是整个Google云平台的新用户。我正在使用微服务结构构建的项目中,确实有很多...

google-cloud-platform microservices google-cloud-endpoints google-cloud-run
1个回答
0
投票

据我了解,API网关应仅充当代理,将所有微服务作为单个端点提供。对于这种情况,我认为您可以采用以下2种方法:

© www.soinside.com 2019 - 2024. All rights reserved.