xbank项目版本库:https://gitee.com/szhengye/xbank.git
总结
1. Sink服务(领域层服务)
- sink-bean类sink服务
- sink接口为BizMessage类型;
- 基于或接口开发服务类,实现process()方法,2个接口区别在于出入参数的类型,前1个是byte[]类型,后1个是JSONObject类型;
- 在sink.yml中配置”sink-bean“类型的connector,服务类支持JavaBean和SpringBean二种挂接方式;
- 在sink.yml中支持多种convert,传入process()方法的参数为经过convert转换后的消息。
- bean类sink服务
- sink接口为BizMessage类型,JSONObject消息体中包括:className(可选)、methodName(可选)、params(必选),params为JSONArray类型;
- 可自由开发服务类;
- 在sink.yml中配置”bean“类型的connector,服务类支持JavaBean和SpringBean二种挂接方式;
- 在sink.yml中convert只支持simple-json类型(后期可能会取消对于bean类sink服务的convert配置)。
2. Biz-Service聚合服务(应用层服务)
integrator接口为带”Biz-Service-Id“header头、以POST方式提交JSON数据,返回为BizMessage类型的JSON串。
在app-bean-service、bean-service类聚合服务开发服务类中,可以用IntegratorClientFactory.getSinkClient()和IntegratorClientFactory.getDelayBizServiceClient(),分别获取sink接口访问和延迟Biz-Service聚合服务接口访问的client API接口。
对sink-bean类sink服务,sink接口为BizMessage类型,应采用接口,统一调用call()方法。
- app-bean-service类聚合服务
- 请求提交为JSON数据;
- 基于接口开发服务类,实现process()方法;
- 在service.yml中配置”app-bean-service“类型的聚合服务,服务类目前只支持JavaBean挂接方式。
- bean-service类聚合服务
- 请求提交为JSON数据,JSON数据中包括:methodName(必选)、params(必选),params为JSONArray类型;
- 可自由开发服务类;
- 在service.yml中配置”bean-service“类型的聚合服务,服务类目前只支持SpringBean挂接方式。
- sink-service类聚合服务
- 请求提交为JSON数据,JSON数据根据后端sink服务接口来定;
- 无需开发代码;
- 在service.yml中配置”sink-service“类型的聚合服务,并配置关联到后端的sink端口。
- script类聚合服务
- 请求提交为JSON数据即可,在脚本中调用sink前,应按要求转换成sink约定的JSON数据格式;
- 无需开发Java代码,但需配置聚合服务脚本;
- 在config/service目录中配置脚本文件,无需在service.yml中配置。
3. 适配层服务
- 采用Biz-SIP自带OpenAPI接口
- Integrator接口为Biz-SIP平台的OpenAPI接口,可以按需对外开放访问。
- 定制适配层接入模块
- 引入Souce类,可以根据消息格式转换的定制,自动进行消息格式转换和适配;
- 通过SourceClientFactory.getBizServiceClient(),获取Biz-Service聚合服务访问接口。
Biz-SIP官方网站:http://bizsip.bizmda.com
Gitee:https://gitee.com/szhengye/biz-sip