ESB产品调用场景分析

news/2024/7/3 6:49:48

随着企业服务总线ESB产品功能的逐渐完善,对用户来说,使用时流畅便捷是对产品的基本需求。那么对于数通畅联来说,让用户使用产品时更便捷是产品不断完善的前进方向。在产品功能实现的基础上,提升应是交互越简单越好,丰富场景也可让客户多一种选择

AEAI ESB作为我们公司的一款核心产品,用于解决各个业务系统之间的异构集成难题。对于服务流程的集成调用在产品中也是一个很重要的功能,为了方便对于产品的整个使用感受更流畅,对于调用功能进行重新调整,对不同类型的服务和流程都可进行调用。现对ESB产品服务接口和集成流程不同场景下的调用功能进行分析总结。 

1总体概述 

本篇文档将对于SMC控制台中的调用场景,整体进行介绍说明,方便后续客户以及公司同事进行调用功能的使用。在使用的过程中,也希望其他人提出意见,从而使调用功能可以更加完善。 

1.1 整体说明

为方便客户减少打开其他调用软件的次数,在SMC控制台内可直接进行接口与流程的调用查看,对于HTTP调用页面和流程调用页面都进行了调整,本篇文档将对于调整后的调用模块功能进行调用操作的说明。 

1.2场景分析 

调用功能主要分为两种,一种是服务接口的调用,另一种是流程的调用,而流程的调用又分为集成流程和HTTP流程。对于服务接口调用,主要是主要在API管理的调用模块中,接口若要调用成功,需要进行如下步骤的操作,在后面的文档(服务调用部分)中会详细介绍说明。 

流程调用分为两块,集成流程的调用主要在应用集成模块,流程调用需要对入参进行配置,不同请求类型的入参设置不同,具体的操作在后面文档中(流程调用部分)也会详细介绍说明。 

普通HTTP流程的调用可在服务工程中的消息流程进行调用,也需要配置入参。具体调用方式跟集成流程一样。 

1.3调用说明 

服务调用是将程序的执行交给其他的代码段,通常是一个流程或者接口,同时保存必要的信息,从而使被调用段执行完毕后返回到调用点继续执行。当操作系统不允许用户直接操作各种硬件资源时,用户程序只能通过系统调用的方式来请求内核为其服务,间接地使用各种资源。 

IP地址提供了在互联网上找到这台机器的凭证,协议以及服务端口提供了在这台机器上找到提供服务的进程的凭证,根据IP地址在互联网上查到要访问的服务所在的机器,根据协议和端口查到服务进程,再根据服务名查询到对应的服务,完成服务调用。 

当浏览器向Web服务器发出请求时,它向服务器传递了一个数据块,也就是请求信息,HTTP请求信息由以下3部分组成: 

1.请求方法URI协议/版本:请求的第一行是“方法URI协议/版本”。 

例如:GET/sample.jsp HTTP/1.1。 

以上代码中“GET”代表请求方法,“/sample.jsp”表示URI,“HTTP/1.1代表协议和协议的版本。 

2.请求头(Request Header):请求头包含许多有关的客户端环境和请求正文的有用信息。例如,请求头可以声明浏览器所用的语言,请求正文的长度等。 

3.请求正文:请求头和请求正文之间是一个空行,这个行非常重要,它表示请求头已经结束,接下来的是请求正文。请求正文中可以包含客户提交的查询字符串信息,如:username=jinqiao&password=1234。 

在以上的例子的HTTP请求中,请求的正文只有一行内容。当然,在实际应用中,HTTP请求正文可以包含更多的内容。 

2服务工程 

在服务工程模块是通过设计器创建工程后在SMC管理控制台服务工程模块才可以看到工程列表,点击具体某个工程后会显示当前工程的基本信息、Web服务、消息流程,也可以通过本界面来管理工程。在该模块场景下可以对创建的工程应用中的流程进行调用,并可对服务流程进行启停操作。 

2.1调用位置 

调用位置可在消息流程中调用,选择一个流程就可进行调用。 

点击“调用”按钮,会弹出一个手工调用的弹窗。 

该弹窗可以对调用流程的入参信息进行填写,调用后可查看相应输出的内容。 

HTTP流程的调用也可以直接选择工程的MF服务下的流程进行直接调用。 

点击“调用”按钮会弹出对应流程的手动调用页面,调用后可查看相应输出的内容。 

2.2调用内容 

在服务工程中只可对类型为“Http”的流程进行手动调用,对于所有类型的流程,可以对流程进行“启动”和“停止”。 

在消息流程下也可对定时流程进行启停。 

2.3调用结果 

选择一个http流程进行调用,填写入参,并点击调用按钮,展现调用结果如下。 

3API服务 

API服务是在SMC管理控制台的API管理模块下的功能页面,API服务功能主要是对是将各个系统的服务在ESB进行管理的模块,管理的方式包括导入、注册和配置。ESB产品中的服务调用也可对这些服务进行调用,共有四类,分别是导入、注册、代理、配置服务。 

3.1调用位置 

在API服务中,不同服务的调用位置都是在对应服务的接口中,有两个方式进到调用页面。 

第一种方式,在API服务可先选择一个服务,点击进去。 

来到服务的API列表页面,选择调用的服务接口,再点击“调用样例”按钮。 

可以直接跳转到接口的调用样例页面,该部分有三种调用,分别是HTTP调用、CURL调用、JAVA调用。HTTP调用页面显示接口信息,可以支持调用;CURL调用中CURL是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP、FTP、TELNET等,在CURL调用页面中的调用URL的语句就可以直接在服务器中调用。JAVA调用页面,可直接复制JAVA代码,粘贴到开发工具类中调用,也可直接下载工程,把工程放在设计器的workspace文件夹,导入到设计器即可。

第二种方式是可直接双击进入API列表服务接口的基础信息页面。 

在接口基本信息页面点击右上角的“调用样例”标签按钮,同样可以来到接口调用样例的模块。 

3.2调用接口 

对于想要调用的接口进行入参出参的配置,入参和出参有不同的创建方法,下图为模板创建。 

对于该接口的出参,配置的是以模型进行创建的。 

3.3调用展示 

接下来对配置好的接口进行调用展示。以Web服务的服务查单条接口为例,点击接口基本信息页面的“调用样例”,来到调用页面。如果入参显示方式为“文本”,需调整入参数据,再点击“调用”按钮,就可以得到出参信息。 

如果入参数据的显示方式为“表格”,则可调整下图入参位置再进行调用。 

4API超市 

API超市同样是在SMC管理控制台的API管理模块下的功能页面,API超市主要是对是将注册到API服务中的每个API接口进行直接的调用。其中,API分组查询,以API分组方式对服务接口进行归类;API应用查询,以应用系统方式对服务接口进行归类;API调用查询,以调用系统方式对服务接口进行归类。 

4.1调用位置 

API超市的调用位置,在详情页面包括HTTP调用、CURL调用以及JAVA调用的三种调用方式。 

CURL调用页面,显示接口信息,支持调用: 

JAVA调用页面,显示代码信息,支持复制代码、下载工程、调用: 

4.2接口配置 

对于想要调用的接口进行入参出参的配置,这里以预置服务中的认证服务为例。该服务下只有一个服务接口,是用来获取tokenId的。该接口入参类型为QueryParam,出参类型为String。 

那对应入参设置页面需要进行“添加根节点”如下。 

添加之后如下图显示,继续添加入参信息字段,需选中根节点,点击“添加节点”的操作。 

添加对应所需入参数据,对于该接口需要一个“appCode”和“appPwd”,如下图。 

该接口出参数据只是一个tokenId的值,可以不添加出参数据。如服务接口需添加可参照“调用接口”中的出参数据进行添加。 

4.3调用演示 

对HTTP调用、JAVA调用、CURL调用进行调用演示。首先HTTP调用与API服务的调用一样,这里就不多介绍了。 

对于CURL调用,点击“复制调用URL”,把复制的内容直接到服务器中执行,即可输出对应响应内容。 

JAVA调用页面,可直接复制JAVA代码,粘贴到开发工具类中调用,也可直接下载工程,把工程放在设计器的workspace文件夹,导入到设计器即可。 

点击下载工程后,对下载的压缩文件进行解压。 

对于解压的文件夹放在ESB设计器的workspace文件夹中。 

接下来在新版本设计器中导入该工程; 

选择刚刚导入到/workspace目录下的工程文件: 

点击确定按钮后直接Finish即可。在“com.xcorp.api.test”分组下,是调用的代码,在“com.xcorp.api.utils”中的RequestUrlHelper.java文件,是在模板中创建一个公共类,公共类内封装包含获取tokenId以及动态获取调用URL等一些固定的方法。代码中的24行和25行,是需要调整成对应工程应用的编码和密码(图中27、28行为对应调整)。 

调用方法为在代码页面单击右键,选择“Run As”-“Java Application”进行调用。 

出参的信息显示在“console”中,这就是JAVA调用的方法。 

5应用集成 

应用集成部分主要是场景配置和集成流程两个模块。场景配置功能是将已注册的系统间接口进行对接,实现系统集成逻辑,是实现集成工作的关键配置。集成流程则为设计器开发的业务集成类流程,点击单条可查看或编辑集成流程,手工调用页面点击调用按钮可以直接调用当前流程。接下来对应用集成流程如何配置、调用进行介绍。 

5.1调用位置

对于流程调用的逻辑以及调用位置进行简单介绍说明,应用集成的流程调用功能在应用集成下的集成流程模块中,可选择一个集成流程。 

在详情页面选择对应的HTTP流程的“查看”按钮。 

会弹出HTTP流程的详情页面,点击“调用”按钮。 

会再弹出一个“手工调用”弹窗页面,输入入参信息,再点击调用即可完成在响应输出中看到调用结果。 

5.2场景配置 

基于接口的调用,来配置集成场景,设置来源数据与目标数据。首先,新增场景配置,填写名称和编码,来源选择Rest服务的Retrieve接口,目标选择Web服务的Create接口,然后点击保存。 

来到映射参数页面,进行参数解析。 

解析完毕后,回到基本信息页面进行场景提交。 

5.3流程配置 

接下来可在设计器中,对于提交的场景配置进行创建。在应用集成中心的MF服务中,创建一个消息流程。 

  

选择“HTTP请求响应消息流程”-“应用服务集成”。 

 

点击Next,刷新目标表,可查看刚刚提交的流程,选择刚刚在场景配置中配置的集成流程完成创建。 

创建完成后,流程图大致如下: 

首先,在httpRequest中添加一个入参,参数为code。如下图: 

初始化操作节点,就是为了获取值。此样例中没有需要修改的部分。接下来处理源数据调用接口,在调用URL中删除自身带的code值,并且在变量中选择刚刚httpRequest节点中设置的入参参数code。如下: 

接下来,对于映射转换组件进行配置,主要就是把源数据映射到对应的目标数据字段中。 

然后对目标接口调用组件进行配置修改,主要就是对入参数据进行修改,具体入参配置如下。 

点击“Next”,解析策略选择“提取报文CDATA”,如下图。 

点击完成后,对流程进行部署,就完成了本次流程的配置。  

5.4调用演示 

接下来,对于配置好的流程进行调用测试,可到集成流程模块,选择查看流程详情。 

点击调用,填写入参数据,对其进行调用即可,如下即为调用成功。 

6分析总结 

对于ESB产品服务流程的调用通过HTTP网络传输协议进行的,调用的场景也是多样的。接下来会从场景应用、调用总结以及心得总结三个方面介绍本次撰写ESB场景分析的心得体会。 

6.1调用应用 

GET和POST是HTTP请求的两种最基本的方法,GET和POST也是传输数据最基本的方法,虽然两者都是传输数据,但是这两种方法有很大区别,比如: 

1.请求数据的不同: 

GET请求方法的数据可URL中,而POST请求方法的数据不在URL中。 

2.数据大小的不同: 

GET最大不超过32k(头文件空间32k,一般GET大小不超过1k),而POST最大可达1G。 

3.用途不同: 

在浏览器中:GET是从指定的资源请求数据;POST则是向指定的资源提交要被处理的数据。 

4.其他不同: 

a)GET在浏览器回退时是无害的,而POST会再次提交请求; 

b)GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留; 

c)GET请求会被浏览器主动cache,而POST不会,除非手动设置; 

d)对参数的数据类型,GET只接受ASCII字符,而POST没有限制。 

GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。 

6.2调用总结 

作为产品的开发者,随着对产品开发工作的逐渐深入,对于各个的功能也慢慢熟悉。通过本次调用功能场景的梳理分析,对ESB产品的业务逻辑了解得更深入。调用功能会有一些涉及底层的逻辑,需要去了解并理解。在后续产品使用中,对调用功能部分的完善以及进一步开发也更得心应手,通过不断测试来暴露问题,才能慢慢解决问题。 

6.3心得总结 

本文对每个调用功能的场景进行说明,有关调用方面还包含很多的知识,需要后续不断学习,需要不断积累夯实基础。本次对调用模块功能的场景分析后,对于整体ESB产品的使用逐渐能够串联起来,对于HTTP调用以及底层接口的实现逻辑有掌握了一些。 

在之前调用功能开发升级的过程中,在代码方面的能力有所提升,学习到很多新知识。在工作学习中,不断完善知识体系,扫除知识盲点,不断提升自身的技术能力。工作时要认真仔细,开发时要全方面考虑问题,只有这样才能把工作做得更好,打造出更完善的产品。 


http://lihuaxi.xjx100.cn/news/58091.html

相关文章

计算机组成原理---第四章指令的寻址方式---应用题

1某计算机指令系统采用定长操作码和变长指令码格式。 2某机字长为16位,存储器按字编址,访问内存指令格式如下: 3一条双字长的load指令存储在地址为200和201的存储位置,该指令将指定的内容装入累加寄存器(ACC)中。指令的…

MySql约束

1.mysql约束的作用:表在设计的时候加入约束目的就是为了保证表中的记录完整性和有效性,比如用户表有些列的值(手机号)不能为空,有些列的值(身份证号)不能重复 分类: 主键约束&…

生物课高中神经调节视频,初中生物神经系统视频

求高中生物神经调节的全部讲解 神经活动的基本过程是反射,反射的结构基础为反射弧,包括五个基本环节:感受器、传入神经、神经中枢、传出神经和效应器。 感受器是接神经调节受刺激的器官,效应器是产生反应的器官;中枢…

NOIP200801ISBN号码

NOIP200801ISBN号码题目链接字面描述题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1样例 #2样例输入 #2样例输出 #2提示代码实现题目 链接 https://www.luogu.com.cn/problem/P1055 字面描述 题目描述 每一本正式出版的图书都有一个 ISBN 号码与之对应&#xff0…

十一、内容补充——SpringCloud + Alibaba 全家桶详解(目前公司最新技术)

因为csdn字数有限,只能另外写一篇把剩下的内容补充完整了。。。。。。 十六、SpringCloud Alibaba Nacos服务注册和配置中心 1. Nacos简介 ⑴ Nacos名字的由来 前四个字母分别为Naming和Configuration的前两个字母,最后的s为Service。 ⑵ Nacos是什…

【思科模拟器基本使用】

切换模式 用户模式:网络设备开机时即用户模式 特权模式:在网络模式下输入enable可切换到特权模式 全局配置模式:在特权模式下输入configure terminal可进入全局配置模式 线路配置模式:在全局配置模式下输入line console 0(配置编号…

opencv从入门到精通 哦吼 07

进阶篇 本篇的内容较多,包含了 6 章内容,分别是模板匹配、滤波器、腐蚀与膨胀、图形检测、视频处理以及人脸检测和人脸识别。这 6 章内容虽然相对独立,但是在实际开发的过程中,是相辅相成、相得益彰的 目录 模板匹配 模板匹配方…

The Planets: Earth-Vulnhub靶场

下载靶机:下载地址 下载后直接在vm打开,把靶机和kali网络配置成NAT模式。 开启靶机,查看MAC地址。 打开kali使用命令arp-scan -l查看靶机ip:192.168.195.132 nmap -A 192.168.195.132查看开放的端口,能看到打开了80…