服务调用代理控制系统、方法、服务器及可读存储介质技术方案

技术编号:19703251 阅读:16 留言:0更新日期:2018-12-08 14:28
本说明书实施例提供了一种服务调用代理控制系统,通过一个代理系统,代理业务系统的服务,业务系统不需要开放服务,只要实现代理系统的服务即可,避免了开放服务带来的风险,以及侵入业务逻辑带来的风险。

【技术实现步骤摘要】
服务调用代理控制系统、方法、服务器及可读存储介质
本说明书实施例涉及互联网
,尤其涉及一种服务代理调用控制系统及方法、服务器及可读存储介质。
技术介绍
随着互联网技术成熟,测试手段也日渐丰富。测试不仅仅局限于实现输入输出,大量对应用定制化甚至平台化的测试系统应运而生。测试系统需要代替业务系统执行一些服务逻辑,从而推进某个业务逻辑的进行;或是模拟一些复杂场景,封装一些校验逻辑。
技术实现思路
本说明书实施例提供及一种服务代理调用控制系统及方法、服务器及可读存储介质。第一方面,本说明书实施例提供一种服务调用代理控制系统,用于利用代理系统实现为外部系统调用业务系统中的至少一个服务;所述外部系统,用于向所述代理系统发起针对至少一个服务的调用请求;所述代理系统,用于根据所述调用请求,通过预先封装的所述至少一个服务对应的服务接口,调用所述业务系统中所述至少一个服务的业务逻辑代码,并将所述业务逻辑代码提供给所述外部系统;所述业务系统,用于提供所述至少一个服务的业务逻辑代码,并支持所述代理系统读取所述业务逻辑代码。第二方面,本说明书实施例提供一种服务调用代理方法,用于利用代理系统实现为外部系统调用业务系统中的至少一个服务,所述方法包括:接收外部系统发起的针对至少一个服务的调用请求;根据所述调用请求,通过预先封装的所述至少一个服务对应的服务接口,调用所述业务系统中所述至少一个服务的业务逻辑代码,并将所述业务逻辑代码提供给所述外部系统。第三方面,本说明书实施例提供一种服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述服务调用代理的步骤。第四方面,本说明书实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述服务调用代理的步骤。本说明书实施例有益效果如下:本说明书实施例通过一个代理系统,代理了全部的服务,但是服务的实现并不在代理系统内实现,而是例如通过SPI机制在业务系统中读库bundle中实现;业务系统不需要开放服务,只要实现代理系统的服务即可,避免了开放服务带来的风险,以及侵入业务逻辑带来的风险;业务系统的服务实现逻辑,还具有一定自由度,可以完成几个业务系统之间执行顺序的编排能力。附图说明图1为本说明书实施例的服务调用代理控制系统场景示意图;图2为本说明书实施例第一方面提供的服务调用代理控制系统结构示意图;图3为本说明书实施例第一方面提供的服务调用代理控制系统一个实例实现流程图;图4为本说明书实施例第一方面提供的服务调用代理控制系统一个实例中代理系统封装服务接口示意图;图5为本说明书实施例第二方面提供的服务调用代理方法流程图;图6为本说明书实施例第三方面提供的服务调用代理控制服务器结构示意图。具体实施方式为了更好的理解上述技术方案,下面通过附图以及具体实施例对本说明书实施例的技术方案做详细的说明,应当理解本说明书实施例以及实施例中的具体特征是对本说明书实施例技术方案的详细的说明,而不是对本说明书技术方案的限定,在不冲突的情况下,本说明书实施例以及实施例中的技术特征可以相互组合。为了保证测试工具的客观有效,业务逻辑的执行或者模拟,都必须采用系统原生代码来执行。因而需要开放这些业务逻辑的服务。但是往往基于系统设计的封装和内聚要求,这些功能模块是不对外开放服务的。针对这一难题,本说明书实施例实现了一种利用代理封装服务依赖而又不侵入应用系统的,灵活、快速、统一的服务封装依赖方案。参见图1,为本说明书实施例的服务调用代理控制系统场景示意图。外部系统101可以是多个(如图1中外部系统1、外部系统2、……、外部系统n),例如,具体应用中,外部系统101可以是指测试工具平台;代理系统102是连接外部系统101和业务系统103的系统,其作用是响应于外部系统101的请求,代理实现业务系统103的业务逻辑;业务系统102可以是多个不同的业务系统(如图1中业务系统1、业务系统2、……、业务系统n)(处理不同的业务),其与代理系统102具有接口调用关系,允许代理系统102调用外部系统101请求的业务逻辑。可以理解,外部系统101、代理系统102、业务系统103是从上至下的三层系统,其中,第1层外部系统101与第2层代理系统102之间存在服务依赖关系,第2层代理系统102与第3层业务系统103之间存在服务注册关系,第3层业务系统103中进行服务编排(如图1中业务系统3与业务系统4存在多个服务相互调用)。请参见图2,为本说明书实施例第一方面提供的服务调用代理控制系统结构示意图。该服务调用代理控制系统200,用于利用代理系统202实现为外部系统201调用业务系统203中的至少一个服务;外部系统201例如可以是测试工具平台,是使用者(例如是外部应用),其主要用于向代理系统202发起针对业务系统203中至少一个服务的调用请求;其中,每个服务可以理解是一个功能模块,例如,在每个业务系统203中存储并实现有多个功能模块,从而实现各个服务。代理系统202,是本说明书实施例中为了避免直接开放业务系统203权限,从而设置的一个系统,其主要目的在于代替业务系统203实现服务的业务逻辑,从而为外部系统201所用。具体实现中,代理系统202与业务系统203之间通过预先设置的接口,从而在代理系统202调用业务系统203中的服务。可以理解,代理系统202用于根据调用请求,通过预先封装的至少一个服务对应的服务接口,调用业务系统203中至少一个服务的业务逻辑代码,并将业务逻辑代码提供给外部系统203;业务系统203是被测试的系统,例如是一个新上的网络平台系统。业务系统203用于提供至少一个服务的业务逻辑代码,并支持代理系统202代理业务逻辑代码。在一种可选方式中,代理系统202具体包括:外部系统通信单元2021,用于与外部系统201通信,包括从外部系统201接收调用请求,以及向外部系统201提供业务逻辑代码;服务接口封装单元2022,用于声明服务接口,并将声明的接口参数打包成服务接口文件并存储;其中,服务接口文件被业务系统203引入从而使得代理系统202可代理到所述业务逻辑代码。其中:服务接口封装单元2022可以具体用于:确定接口名、调用方法、接入参数、返回参数、参数类型、注释参数中的一项或多项。在一种可选方式中,业务系统203包括:业务逻辑存储单元2031,用于存储至少一个服务的业务逻辑代码;服务注册单元2032,用于查找到代理系统202生成的服务接口文件,并通过对服务接口文件进行参数配置,将业务逻辑代码引入服务接口文件。在一种可选方式中,代理系统202,根据各个服务的调用请求的顺序,依次实现对各服务对应的业务逻辑代码的代理。其中,各个服务可以来自一个业务系统203,也可以来自不同的业务系统203。对于调用不同业务系统203的服务,即代理系统202实现了跨业务系统202多个服务互相之间的调用。参见图3,为本说明书实施例第一方面提供的服务调用代理控制系统一个实例实现流程图。在该实例的实现流程中,示意出了两个服务(服务A和服务B)的调用过程。针对每个服务的调用过程,主要包括如下三个步骤:步骤1:外部系统向代理系统发起服务调用请求。外部系统的需求是调用业务系统内部的某个或某些服务(本文档来自技高网...

【技术保护点】
1.一种服务调用代理控制系统,用于利用代理系统实现为外部系统调用业务系统中的至少一个服务;所述外部系统,用于向所述代理系统发起针对至少一个服务的调用请求;所述代理系统,用于根据所述调用请求,通过预先封装的所述至少一个服务对应的服务接口,调用所述业务系统中所述至少一个服务的业务逻辑代码,并将所述业务逻辑代码提供给所述外部系统;所述业务系统,用于提供所述至少一个服务的业务逻辑代码,并支持所述代理系统读取所述业务逻辑代码。

【技术特征摘要】
1.一种服务调用代理控制系统,用于利用代理系统实现为外部系统调用业务系统中的至少一个服务;所述外部系统,用于向所述代理系统发起针对至少一个服务的调用请求;所述代理系统,用于根据所述调用请求,通过预先封装的所述至少一个服务对应的服务接口,调用所述业务系统中所述至少一个服务的业务逻辑代码,并将所述业务逻辑代码提供给所述外部系统;所述业务系统,用于提供所述至少一个服务的业务逻辑代码,并支持所述代理系统读取所述业务逻辑代码。2.根据权利要求1所述的系统,所述代理系统包括:外部系统通信单元,用于与所述外部系统通信,包括从所述外部系统接收所述调用请求,以及向所述外部系统提供业务逻辑代码;服务接口封装单元,用于声明所述服务接口,并将声明的接口参数打包成服务接口文件并存储;其中,所述服务接口文件被所述业务系统引入从而使得所述代理系统可调用到所述业务逻辑代码。3.根据权利要求2所述的系统,所述服务接口封装单元具体用于:确定接口名、调用方法、接入参数、返回参数、参数类型、注释参数中的一项或多项。4.根据权利要求2所述的系统,所述业务系统包括:业务逻辑存储单元,用于存储所述至少一个服务的业务逻辑代码;服务注册单元,用于查找到所述代理系统生成的所述服务接口文件,并通过对所述服务接口文件进行参数配置,将所述业务逻辑代码引入所述服务接口文件。5.根据权利要求1-4任一项所述的系统,所述代理系统,根据各个服务的调用请求的顺序,依次实现对各服务对应的业务逻辑代码的调用。...

【专利技术属性】
技术研发人员:楼磊
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1