本文主要是介绍Biz-SIP业务中台案例实战(4)——通过Sink透传App服务直接调用Sink服务,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Biz-SIP金融级业务中台(http://bizsip.bizmda.com))是一套基于领域驱动设计(DDD),用于快速构建金融级云原生架构的服务整合中间件,包含了在金融场景里锤炼出来的最佳实践。
Biz-SIP业务中台在交易处理时,会先后涉及Source层、App层和Sink层的处理,为了规范各层的调用关系,Source层的OpenAPI接口和Source模块,是不能直接调用Sink层的Sink模块的,要求一定要通过App层的App服务来进行编排和组装。
在“Biz-SIP业务中台案例实战(2)——App服务调用Sink服务”这节中,App服务是需要编写Java类来实现的。
本节介绍使用Sink透传App服务,无需编写App服务代码,就能让Source模块和开放OpenAPI接口,直接调用Sink层的hello-sink服务:
具体代码和配置可以查看Biz-SIP源代码中的Sample相关测试案例(https://gitee.com/szhengye/biz-sip)
一、Sink层Sink服务的开发和配置
Sink层Sink服务的开发和配置,我们需要编写一个Sink服务类,配置sink.yml,以及配置application.yml以激活启动Sink服务,具体的相关介绍 ,请参见本专栏的“Biz-SIP业务中台案例实战(2)——App服务调用Sink服务”一节,这里不再讲解。
二、App层App服务的开发和配置
对于Sink透传App服务,只需要在app.yml中配置即可:
- app-service-id: /sink/hello-sinktype: sink-servicesink-id: hello-sink
可以看到在app.yml中,配置了App服务“/sink/hello-sink”,类型为Sink透传App服务(sink-service),透传调用的Sink服务为“hello-sink”。
三、启动应用进行测试
启动SampleSinkApplication、SampleAppApplication应用,通过开放平台接口发起请求,就可以接收到响应,返回的报文内容增加了message域:
$ curl -H "Content-Type:application/json" -H "Biz-Service-Id:/sink/hello-sink" -X POST --data '{"accountNo":"003"}' http://localhost:8888/api|jq{"code": 0,"message": "success","extMessage": null,"appServiceId": "/sink/hello-sink","traceId": "d310149f0f9d4df7824617235239210b","parentTraceId": null,"timestamp": 1646706999650,"data": {"message": "hello!","accountNo": "003"}
}
Biz-SIP官方网站:http://bizsip.bizmda.com
Gitee:https://gitee.com/szhengye/biz-sip
这篇关于Biz-SIP业务中台案例实战(4)——通过Sink透传App服务直接调用Sink服务的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!