一种编排数据处理与接口服务及调用方法与流程

文档序号:25420296发布日期:2021-06-11 21:31阅读:232来源:国知局
一种编排数据处理与接口服务及调用方法与流程

本发明涉及计算机技术领域,特别是一种编排数据处理与服务及调用方法。



背景技术:

随着信息技术的不断发展,企业中信息化的需求越来越旺盛,根据不同的业务构建不同的系统,在新系统完成后经常需要跟已有的系统进行对接,已有的系统由于开发时间的不同,开发团队的不同,使用的技术栈和接口通讯时采用的数据格式可能是不一样的,不同的接口,通讯时的数据结构也可能不一样,但系统所需要对接的数据范围是相对明确的,因此会产生三个问题:

一、有些服务采用的技术栈是webservice,进行数据通讯,需要新上架的系统提供webservice接口供现有系统调用,推送数据,有些现有服务提供webservice接口供新上架系统查询数据,同样是获取数据就存在着推和拉两种方式,而这只是针对一个通讯框架,如果新上架的系统采用的技术栈中没有webservice,那么研发人员需要因引入webservice而进行定制开发;

二、如果新上架的系统根据现有系统a提供了相应的数据接口,供系统a查询,但此时另一个现有的系统b需要新上架的系统定时推送数据上来,那研发人员需要再开发一个定时任务以及接口调用;

三、每次开发完接口之后,都必须要重新部署系统,让接口生效。

以上只是对服务之间对接存在的问题进行简要列举,本专利的方法可以实现方便有效的处理,大大降低定制开发接口的成本投入。

基于本专利,可以编排一个数据路由流程,在调用方和被调用方之间形成一道透明代理,或将两个被动调用的接口串联起来,做到调用接口a后,以a接口返回的数据进行数据处理后作为调用接口b的参数,进行调用,在创建或修改数据路由流程之后,只需要点击部署按钮,进行数据路由的部署,整个路由重部的过程,应用不需要重新启动。



技术实现要素:

本发明的目的在于提供一种编排数据处理与服务及调用方法,以解决背景技术中不同接口对接需要人为定制开发以应对服务间通讯协议不一致,数据格式需要转换的问题,通过在调用方和被调用方之间形成一道透明代理,或将两个被动调用的接口串联起来,将变化的元素抽离出来,供用户快速配置部署。

为实现上述技术目的,达到上述技术效果,本发明公开了一种编排数据处理与服务及调用方法,包括但不限于(http服务节点,http接口调用节点,webservice服务节点,webservice接口调用节点,定时任务节点,sql数据库操作节点,消息队列发布消息节点,消息队列消费节点)以及数据处理节点,包括但不限于(json与xml互转,json与map,xml与map互转,数据结构转换,xpath提取xml),具体实现步骤如下:

s1,先根据需要,创建出服务节点,服务节点包括http服务接口节点、webservcie服务接口节点、定时器节点、消息订阅节点,这类服务节点的特征是能产生数据流入到整个数据路由流程中;一个数据路由必须要有服务节点;

s2,根据需要,创建数据处理节点或数据转换节点,针对服务节点中流入到数据路由中的数据进行数据处理,如数据格式转换或数据结构转换,如果数据不需要转换,可以不需要数据处理节点或数据转换节点;

s3,根据需要,创建分支节点,对上一个节点输出的数据进行逻辑判断,以决定下一步要流向哪个节点,如果数据只会有一个流向,则不需要创建分支节点;

s4,根据需要,创建调用服务请求节点,调用服务请求节点包括http请求节点、webservice请求节点、消息发布节点、sql数据操作节点,调用服务节点的特征是能将数据作为参数调用相应的服务节点,并得到返回信息,如果数据不需要做为参数去调用服务,那就不需要创建调用服务;

s5,根据需要重复s1-s4,再将各节点连线指明从什么服务流向什么服务;

s6,根据用户的编排,进行解析,找到流程定义中的开始节点(平台接口);

s7,以开始节点进行深度遍历,开始节点只会是服务节点,因此根据服务的类型创建对应的服务,http_server即通过netty动态创建http服务,webservice_server则先通过javassist动态生成接口,再通过apachecxf基于动态生成的接口创建webservcie服务,其它服务同理调用相应组件创建对应服务;

s8,遍历与上一个节点相连的节点,如果当前节点是服务节点,因为平台接口只能有一个,所以其他服务节点只能是外部接口节点,http_client会通过netty创建httpclient发起http请求,webservice_client会通过cxf创建webservice客户端,其它服同理调用相应组件创建对应调用;

s9,如果遍历的当前节点是数据处理节点,则根据数据处理的类型,创建对应的数据处理器,如jsontomap即通过jackson对json进行转换,其它数据处理类似;

s10,如果遍历的当前节点是数据转换节点,则会根据用户配置的源数据格式和目标数据格式映射,按源数据的每个字段进行遍历,如果字段配置了表达式,则根据表达式进行解析得到相应的值作为与源字段相对应的目标字段的值,该字段有配置条件表达式则先进行条件判断,如果条件不满足则跳过该字段;

s11,根据数据路由定义,把对应节点创建的各服务节点,数据处理节点,数据转换节点按编排的顺序串联起来;

s12,在运行时数据通过服务节点接收数据进行流转的过程中,上一个节点的输出会作为下一个节点的输入参数。

根据业务需要可以重复s2-s4的步骤,除了数据流的发起节点必须要存在,其余节点都可根据需要自由组合。

本发明的有益效果:

1、本发明除了不支持两个及以上的主动请求的接口进行串联以外,可以用于任意接口的对接,

2、本发明可以针对不同接口的不同数据格式和结构可以进行任意转换,包括但不限于json与xml互转,json与map,xml与map互转,数据结构转换,xpath提取xml,以及数据结构转换。

附图说明

图1为本发明一种实施例方框流程示意图。

图2为本发明中数据路由配置的操作界面图。

图3为本发明中数据转换节点的设置界面图。

图4为本发明中其余节点的参数设置界面图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。

如图1所示,本发明公开了一种编排数据处理与接口服务及调用方法,以解决背景技术中不同接口对接需要人为定制开发以应对服务间通讯协议不一致,数据格式需要转换的问题,通过用户配置数据路由流程,将流程中的数据接口串联起来,到数据处理透明代理的目的。帮助用户快速将不同应用的不同接口进行对接,过程中无须重启应用。

如图2,为数据路由配置的操作界面图。

其中,图2中的左边线框为数据流的节点工具区,根据需要可以将相应的节点托入右边的设计区域;

图2中的右边线框为数据流的设计区域,所有的节点编排都在这个区域操作;

1、以图2为例,平台接口为服务节点,外部接口为接口调用节点;

2、双击设计器中的节点会弹出节点的参数设置页面,其中数据转换节点的设置界面如图3所示,其余节点的参数设置界面如图4所示;

3、用户根据需要选择节点的类型,可以是http_server,webservice_server等,如之前列举的类型,其中数据处理节点的参数设置界面虽然也是图4,但组件类型列表可以选择的选项却与接口节点(包括服务接口与调用接口)的选项不一样,选项包括但不限于jsontoxml,jsontomap,xmltojson,xmltomap,xpath;

4、当用户配置完数据路由流程与数据处理规则后,点击图2左上角的保存图表,路由流程将被保存下来,此时再将定义好的数据路由流程通过系统的部署按钮,将数据路由启动,整个数据流即生效,开始提供服务,如果之前配置的是http服务的接口作为数据路由的其实节点,则http接口已生效,可以发送http进行调用,webservice也一样,webservice的服务相对于http的服务接口更为复杂,需要根据用户的配置参数动态生成webservice接口,再已webservice接口来发布webservice服务,这些复杂的操作通通包含在此专利中。

以上所述,仅为本发明较佳的服务与服务之间接口对接的方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1