如何使用 WSO2 API MicroGateway 组合多个微服务

Posted

技术标签:

【中文标题】如何使用 WSO2 API MicroGateway 组合多个微服务【英文标题】:How to compose multiple microservices with WSO2 API MicroGateway 【发布时间】:2020-03-15 21:13:32 【问题描述】:

新的 WSO2 API MicroGateway 3.0 声明为新功能支持组合多个微服务。我找不到如何做到这一点的示例 . 我们正在尝试使用这种类型的处理的用例: 使用 OData 查询后端数据库的 API,如果未找到,则查询另一个(非 OData)API。 在这两种情况下,结果都必须进行转换(重新格式化)。

【问题讨论】:

【参考方案1】:

组合微服务的想法是使用微网关将一组微服务公开为单个 API。基本上,您可以定义一组 REST 资源,然后将它们指向不同的微服务。例如: /列表 。 -> 微服务1 /添加->微服务2。 您可以使用 swagger (open API) 扩展定义每个资源后端,如下所示 https://github.com/wso2/product-microgateway/blob/master/samples/per_resource_endpoint.yaml

到目前为止,微网关还没有开箱即用的能力来根据前一个端点的响应调用后续端点。 但是您可以使用响应拦截器转换响应,如下面的链接所述 https://docs.wso2.com/display/MG300/Adding+Interceptors

【讨论】:

感谢您的回答。那么您会建议使用哪种 WSO2 工具来完成这项任务?芭蕾舞演员集成商? 您应该能够使用微集成商 (ei.docs.wso2.com/en/latest/micro-integrator/references/…) 或企业集成商 (docs.wso2.com/display/EI650/Aggregate+Mediator) 的聚合器中介

以上是关于如何使用 WSO2 API MicroGateway 组合多个微服务的主要内容,如果未能解决你的问题,请参考以下文章

如何使用api为wso2 bps创建用户和角色

WSO2:如何将一个api的响应用作另一个API的输入参数

如何执行WSO2用户身份验证

WSO2 REST请求创建新API?

使用 WSO2-AM 处理 JWT

将 WSO2API 管理器从 H2 迁移到 Mysql