Biz-SIP业务中台案例实战(4)——通过Sink透传App服务直接调用Sink服务

2023-12-07 11:18

本文主要是介绍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服务的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/465649

相关文章

C语言小项目实战之通讯录功能

《C语言小项目实战之通讯录功能》:本文主要介绍如何设计和实现一个简单的通讯录管理系统,包括联系人信息的存储、增加、删除、查找、修改和排序等功能,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录功能介绍:添加联系人模块显示联系人模块删除联系人模块查找联系人模块修改联系人模块排序联系人模块源代码如下

Java中使用Java Mail实现邮件服务功能示例

《Java中使用JavaMail实现邮件服务功能示例》:本文主要介绍Java中使用JavaMail实现邮件服务功能的相关资料,文章还提供了一个发送邮件的示例代码,包括创建参数类、邮件类和执行结... 目录前言一、历史背景二编程、pom依赖三、API说明(一)Session (会话)(二)Message编程客

SpringBoot实现动态插拔的AOP的完整案例

《SpringBoot实现动态插拔的AOP的完整案例》在现代软件开发中,面向切面编程(AOP)是一种非常重要的技术,能够有效实现日志记录、安全控制、性能监控等横切关注点的分离,在传统的AOP实现中,切... 目录引言一、AOP 概述1.1 什么是 AOP1.2 AOP 的典型应用场景1.3 为什么需要动态插

Python调用另一个py文件并传递参数常见的方法及其应用场景

《Python调用另一个py文件并传递参数常见的方法及其应用场景》:本文主要介绍在Python中调用另一个py文件并传递参数的几种常见方法,包括使用import语句、exec函数、subproce... 目录前言1. 使用import语句1.1 基本用法1.2 导入特定函数1.3 处理文件路径2. 使用ex

windos server2022的配置故障转移服务的图文教程

《windosserver2022的配置故障转移服务的图文教程》本文主要介绍了windosserver2022的配置故障转移服务的图文教程,以确保服务和应用程序的连续性和可用性,文中通过图文介绍的非... 目录准备环境:步骤故障转移群集是 Windows Server 2022 中提供的一种功能,用于在多个

Golang操作DuckDB实战案例分享

《Golang操作DuckDB实战案例分享》DuckDB是一个嵌入式SQL数据库引擎,它与众所周知的SQLite非常相似,但它是为olap风格的工作负载设计的,DuckDB支持各种数据类型和SQL特性... 目录DuckDB的主要优点环境准备初始化表和数据查询单行或多行错误处理和事务完整代码最后总结Duck

解决systemctl reload nginx重启Nginx服务报错:Job for nginx.service invalid问题

《解决systemctlreloadnginx重启Nginx服务报错:Jobfornginx.serviceinvalid问题》文章描述了通过`systemctlstatusnginx.se... 目录systemctl reload nginx重启Nginx服务报错:Job for nginx.javas

Python中的随机森林算法与实战

《Python中的随机森林算法与实战》本文详细介绍了随机森林算法,包括其原理、实现步骤、分类和回归案例,并讨论了其优点和缺点,通过面向对象编程实现了一个简单的随机森林模型,并应用于鸢尾花分类和波士顿房... 目录1、随机森林算法概述2、随机森林的原理3、实现步骤4、分类案例:使用随机森林预测鸢尾花品种4.1

Idea调用WebService的关键步骤和注意事项

《Idea调用WebService的关键步骤和注意事项》:本文主要介绍如何在Idea中调用WebService,包括理解WebService的基本概念、获取WSDL文件、阅读和理解WSDL文件、选... 目录前言一、理解WebService的基本概念二、获取WSDL文件三、阅读和理解WSDL文件四、选择对接

macOS怎么轻松更换App图标? Mac电脑图标更换指南

《macOS怎么轻松更换App图标?Mac电脑图标更换指南》想要给你的Mac电脑按照自己的喜好来更换App图标?其实非常简单,只需要两步就能搞定,下面我来详细讲解一下... 虽然 MACOS 的个性化定制选项已经「缩水」,不如早期版本那么丰富,www.chinasem.cn但我们仍然可以按照自己的喜好来更换