You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于WSO2的微服务编排流程开发入门指引请求

WSO2 编排流程入门实现指引

一、工具选择确认

你的方向是对的:用Integration Studio做开发,部署到Micro-Integrator(MI)完成编排(Enterprise Integrator是包含MI+Dashboard等的套件,核心编排用MI足够);如果需要对外暴露API做网关管理、权限控制,再搭配API Manager即可。

二、分步实现流程

1. 开发三个微服务(模拟/实际服务)

在Integration Studio中,为每个微服务创建REST API或Proxy Service:

  • 微服务1:创建API,路径设为/customer/{customerId},返回包含fullName、address、customerId、age的JSON数据;若对接真实后端,用Call Mediator调用实际服务即可
  • 微服务2:API路径设为/account/{customerId},返回accountNo、expiryDate、bankName字段
  • 微服务3:API路径设为/account/balance/{accountNo},返回balance、lastTransactions(数组格式,包含3条交易记录及日期)

提示:如果暂时没有真实后端,用Payload Factory Mediator直接构造模拟返回数据,可快速验证流程。

2. 开发核心编排流程(ESB路由+业务逻辑)

在Integration Studio中创建API作为入口流程,实现以下逻辑:

  • 接收请求:创建入口API,路径设为/query-customer-account,接收客户端传入的customerId参数
  • 调用微服务1:用Call Mediator调用微服务1接口,将返回的客户数据(尤其是age字段)存入Message Context(通过Property Mediator存储)
  • 年龄校验:用Filter Mediator判断age < 22,若满足条件,用Payload Factory构造错误响应(如{"error": "无法查询,客户年龄小于22岁"}),直接返回给客户端
  • 调用微服务2:若年龄符合要求,用Call Mediator调用微服务2,获取accountNo并存储
  • 调用微服务3:用存储的accountNo调用微服务3,获取余额及交易记录
  • 聚合结果返回:用Payload Factory或Enrich Mediator将客户数据、账户信息、余额交易数据整合成一个JSON对象,返回给初始请求方

3. 部署与测试

  • 将开发好的所有服务(三个微服务API、核心编排API)导出为CAR包
  • 部署到Micro-Integrator:可直接在Integration Studio中连接MI服务器一键部署,或把CAR包放到MI的deployment/server/carbonapps目录下
  • 验证流程:用Postman等工具调用入口API,传入不同customerId(模拟不同年龄):
    • 年龄<22:返回错误提示
    • 年龄≥22:返回整合后的完整客户+账户+余额数据

三、工具补充说明

  • Integration Studio:WSO2集成开发的核心IDE,支持可视化拖拽 mediators,也可直接编写Synapse配置代码
  • Micro-Integrator:轻量级ESB运行时,负责执行编排逻辑与服务路由,是核心运行组件
  • API Manager:若需对外发布入口API、做流量管控或权限验证,可将MI中的API导入APIM进行管理

内容的提问来源于stack exchange,提问作者user19464830

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 05:07:20