一种服务编排方法和装置制造方法及图纸

技术编号:30414764 阅读:19 留言:0更新日期:2021-10-24 16:18
本发明专利技术公开了一种服务编排方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:根据调用请求中的接口名称和业务入参,获取预设的服务配置信息;其中,服务配置信息包括服务映射信息、服务调用信息和服务接口执行次序;根据服务映射信息中的脚本地址,获取对应的服务处理脚本,根据服务接口执行次序,对服务调用信息的服务接口进行分组,将归属于同一分组的服务接口作为任务节点,生成任务队列;按照任务节点中服务接口的服务接口执行次序,从任务队列中拉取任务节点,执行任务节点的服务接口,得到返回结果;使用服务处理脚本对返回结果进行组装,返回组装结果。该方法增加了服务调用的灵活性,降低了开发成本,提升了产品更新周期。了产品更新周期。了产品更新周期。

【技术实现步骤摘要】
一种服务编排方法和装置


[0001]本专利技术涉及计算机
,尤其涉及一种服务编排方法和装置。

技术介绍

[0002]随着业务的发展,不同的业务场景通常需要调用多个服务才能满足业务需求。比如,对于查询用户信息这一业务场景,需要调用用户基础信息查询、用户账号信息查询和用户等级信息查询这三个服务。而且在调用服务时,需要进行参数包装、转换、过滤等一系列处理。
[0003]在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:
[0004]对服务的处理以及服务的调用链均采用硬编码的方式,即将数据直接写入到代码中进行编译开发,如果业务需求或者服务有变更,则必须修改代码才能解决,导致开发成本增加,拖延产品更细周期。

技术实现思路

[0005]有鉴于此,本专利技术实施例提供一种服务编排方法和装置,通过在服务配置信息中预先自定义服务映射信息、服务调用信息和服务接口执行次序,在接收到调用请求后,基于服务配置信息处理调用请求,无需开发即可满足业务需求,增加了服务调用的灵活性,降低了开发成本,提升了产品更新周期。
[0006]为实现上述目的,根据本专利技术实施例的一个方面,提供了一种服务编排方法。
[0007]本专利技术实施例的一种服务编排方法,包括:根据调用请求中的接口名称和业务入参,获取预设的服务配置信息;其中,所述服务配置信息包括服务映射信息、服务调用信息和服务接口执行次序;根据所述服务映射信息中的脚本地址,获取对应的服务处理脚本,根据所述服务接口执行次序,对所述服务调用信息的服务接口进行分组,将归属于同一分组的所述服务接口作为任务节点,生成任务队列;按照所述任务节点中服务接口的服务接口执行次序,从所述任务队列中拉取所述任务节点,使用线程执行所述任务节点的服务接口,得到返回结果;使用所述服务处理脚本对所述返回结果进行组装,返回组装结果。
[0008]可选地,所述服务映射信息配置有所述返回结果与任务执行次序的映射关系,所述服务处理脚本包括结果整合脚本;使用所述服务处理脚本对所述返回结果进行组装,包括:通过执行所述结果整合脚本,来按照所述任务执行次序,获取对应的返回结果进行个性化组装。
[0009]可选地,所述服务映射信息还配置有所述业务入参与服务接口入参的映射关系,所述服务处理脚本还包括入参映射脚本,所述入参映射脚本用于实现所述业务入参与所述服务接口入参的映射;使用线程执行所述任务节点的服务接口的步骤之前,所述方法还包括:通过所述入参映射脚本将所述业务入参转换为所述服务接口入参。
[0010]可选地,所述服务映射信息还配置有所述返回结果与业务处理结果的映射关系,所述服务处理脚本还包括返回结果映射脚本,所述返回结果映射脚本用于实现所述返回结
果与所述业务处理结果的映射;使用所述服务处理脚本对所述返回结果进行组装的步骤之前,所述方法还包括:通过所述返回结果映射脚本将所述返回结果转换为所述业务处理结果;使用所述服务处理脚本对所述返回结果进行组装,包括:通过执行所述结果整合脚本,来按照所述任务执行次序,获取对应的业务处理结果进行个性化组装。
[0011]可选地,使用线程执行所述任务节点的服务接口,得到返回结果,包括:遍历所述任务节点的服务接口;在所述任务节点包括多个所述服务接口的情况下,使用与服务接口数量相同的线程并行执行多个所述服务接口;当所述任务节点的服务接口执行完成后,使用所述结果整合脚本合并多个所述线程的执行结果,得到返回结果。
[0012]可选地,通过所述入参映射脚本将所述业务入参转换为所述服务接口入参,包括:根据所述入参映射脚本的脚本类型,获取脚本引擎;根据预保存的所述入参映射脚本的脚本编译包,执行所述入参映射脚本,输出所述服务接口入参。
[0013]可选地,获取脚本引擎的步骤之后,所述方法还包括:判断是否保存有所述入参映射脚本的脚本编译包;在未保存所述脚本编译包的情况下,使用所述脚本引擎解析所述入参映射脚本,得到脚本内容;将所述脚本内容进行编译打包,生成脚本编译包,保存所述脚本编译包。
[0014]为实现上述目的,根据本专利技术实施例的另一方面,提供了一种服务编排装置。
[0015]本专利技术实施例的一种服务编排装置,包括:信息获取模块,用于根据调用请求中的接口名称和业务入参,获取预设的服务配置信息;其中,所述服务配置信息包括服务映射信息、服务调用信息和服务接口执行次序;服务解析模块,用于根据所述服务映射信息中的脚本地址,获取对应的服务处理脚本,根据所述服务接口执行次序,对所述服务调用信息的服务接口进行分组,将归属于同一分组的所述服务接口作为任务节点,生成任务队列;服务调用模块,用于按照所述任务节点中服务接口的服务接口执行次序,从所述任务队列中拉取所述任务节点,使用线程执行所述任务节点的服务接口,得到返回结果;服务整合模块,用于使用所述服务处理脚本对所述返回结果进行组装,返回组装结果。
[0016]可选地,所述服务映射信息配置有所述返回结果与任务执行次序的映射关系,所述服务处理脚本包括结果整合脚本;所述服务整合模块,还用于通过执行所述结果整合脚本,来按照所述任务执行次序,获取对应的返回结果进行个性化组装。
[0017]可选地,所述服务映射信息还配置有所述业务入参与服务接口入参的映射关系,所述服务处理脚本还包括入参映射脚本,所述入参映射脚本用于实现所述业务入参与所述服务接口入参的映射;所述装置还包括:入参转换模块,用于在使用线程执行所述任务节点的服务接口之前,通过所述入参映射脚本将所述业务入参转换为所述服务接口入参。
[0018]可选地,所述服务映射信息还配置有所述返回结果与业务处理结果的映射关系,所述服务处理脚本还包括返回结果映射脚本,所述返回结果映射脚本用于实现所述返回结果与所述业务处理结果的映射;所述装置还包括:出参转换模块,用于在使用所述服务处理脚本对所述返回结果进行组装之前,通过所述返回结果映射脚本将所述返回结果转换为所述业务处理结果;所述服务整合模块,还用于通过执行所述结果整合脚本,来按照所述任务执行次序获取对应的业务处理结果进行个性化组装。
[0019]可选地,所述服务调用模块,还用于遍历所述任务节点的服务接口;在所述任务节点包括多个所述服务接口的情况下,使用与服务接口数量相同的线程并行执行多个所述服
务接口;当所述任务节点的服务接口执行完成后,使用所述结果整合脚本合并多个所述线程的执行结果,得到返回结果。
[0020]可选地,所述入参转换模块,还用于根据所述入参映射脚本的脚本类型,获取脚本引擎;根据预保存的所述入参映射脚本的脚本编译包,执行所述入参映射脚本,输出所述服务接口入参。
[0021]可选地,所述入参转换模块,还用于在获取脚本引擎之后,判断是否保存有所述入参映射脚本的脚本编译包;在未保存所述脚本编译包的情况下,使用所述脚本引擎解析所述入参映射脚本,得到脚本内容;将所述脚本内容进行编译打包,生成脚本编译包,保存所述脚本编译包。
[0022]为实现上述目的,根据本专利技术实施例的再本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种服务编排方法,其特征在于,包括:根据调用请求中的接口名称和业务入参,获取预设的服务配置信息;其中,所述服务配置信息包括服务映射信息、服务调用信息和服务接口执行次序;根据所述服务映射信息中的脚本地址,获取对应的服务处理脚本,根据所述服务接口执行次序,对所述服务调用信息的服务接口进行分组,将归属于同一分组的所述服务接口作为任务节点,生成任务队列;按照所述任务节点中服务接口的服务接口执行次序,从所述任务队列中拉取所述任务节点,使用线程执行所述任务节点的服务接口,得到返回结果;使用所述服务处理脚本对所述返回结果进行组装,返回组装结果。2.根据权利要求1所述的方法,其特征在于,所述服务映射信息配置有所述返回结果与任务执行次序的映射关系,所述服务处理脚本包括结果整合脚本;使用所述服务处理脚本对所述返回结果进行组装,包括:通过执行所述结果整合脚本,来按照所述任务执行次序,获取对应的返回结果进行个性化组装。3.根据权利要求2所述的方法,其特征在于,所述服务映射信息还配置有所述业务入参与服务接口入参的映射关系,所述服务处理脚本还包括入参映射脚本,所述入参映射脚本用于实现所述业务入参与所述服务接口入参的映射;使用线程执行所述任务节点的服务接口的步骤之前,所述方法还包括:通过所述入参映射脚本将所述业务入参转换为所述服务接口入参。4.根据权利要求2或3所述的方法,其特征在于,所述服务映射信息还配置有所述返回结果与业务处理结果的映射关系,所述服务处理脚本还包括返回结果映射脚本,所述返回结果映射脚本用于实现所述返回结果与所述业务处理结果的映射;使用所述服务处理脚本对所述返回结果进行组装的步骤之前,所述方法还包括:通过所述返回结果映射脚本将所述返回结果转换为所述业务处理结果;使用所述服务处理脚本对所述返回结果进行组装,包括:通过执行所述结果整合脚本,来按照所述任务执行次序,获取对应的业务处理结果进行个性化组装。5.根据权利要求2所述的方法,其特征在于,使用线程执行所述任务节点的服务接口,得到返回结果,包括:遍历所述任务节点的服务接口;在所述任务节点包括多个所述服务接口的情况下,使用与服务接口数量相同的线程并行执行多个...

【专利技术属性】
技术研发人员:贾兴武薛高飞卢迅鲍阳
申请(专利权)人:北京京东世纪贸易有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1