一种服务聚合方法、装置及系统制造方法及图纸

技术编号:37375780 阅读:7 留言:0更新日期:2023-04-27 07:19
本发明专利技术公开了一种服务聚合方法、装置及系统,涉及计算机技术领域。该方法的一具体实施方式包括:获取应用发送的多个服务请求,所述服务请求指示了目标任务;根据所述目标任务生成服务调用事件,并将所述服务调用事件的标识分别写入所述多个服务请求的消息头中,得到所述多个服务请求分别对应的多个请求消息;将所述多个请求消息发送给底层服务,并接收所述底层服务针对所述请求消息返回的响应结果;根据所述服务调用事件的标识,对所述响应结果进行聚合;根据聚合结果响应所述服务请求。该实施方式实现对服务请求的响应结果进行聚合,便于应用对底层服务进行调用,并提高应用的运行效率。率。率。

【技术实现步骤摘要】
一种服务聚合方法、装置及系统


[0001]本专利技术涉及计算机
,尤其涉及一种服务聚合方法、装置及系统。

技术介绍

[0002]在多应用的服务调用场景下,应用在执行某一个任务时,经常需要对底层的多个基础服务进行调用,并且应用在接收到多个基础服务的调用结果后才能执行该任务。
[0003]目前,应用在收到每个基础服务的调用结果后,需自行确定是否接收到所有调用结果以执行任务。这种方式需要应用每接收到一个调用结果后均进行判断,影响应用的运行效率。

技术实现思路

[0004]有鉴于此,本专利技术实施例提供一种的服务聚合方法、装置及系统,根据应用的服务请求生成请求消息,并接收底层服务根据请求消息返回的响应结果。然后根据服务调用事件的标识,对响应结果进行聚合,并进一步根据聚合结果响应服务请求。由此实现了对服务调用结果进行聚合,并根据聚合结果响应服务请求,而无需应用在每接收到一个服务请求后均进行判断,从而便于应用对底层服务进行调用,并提高应用的运行效率。
[0005]为实现上述目的,根据本专利技术实施例的一个方面,提供了一种服务聚合方法。
[0006]本专利技术实施例的一种服务聚合方法包括:获取应用发送的多个服务请求,所述服务请求指示了目标任务;根据所述目标任务生成服务调用事件,并将所述服务调用事件的标识分别写入所述多个服务请求的消息头中,得到所述多个服务请求分别对应的多个请求消息;将所述多个请求消息发送给底层服务,并接收所述底层服务针对所述请求消息返回的响应结果;根据所述服务调用事件的标识,对所述响应结果进行聚合;根据聚合结果响应所述服务请求。
[0007]可选地,所述将所述服务调用事件的标识分别写入所述多个服务请求的消息头中,得到所述多个服务请求分别对应的多个请求消息,包括:针对每一个所述服务请求,执行:确定所述目标任务对应的业务标识,并生成所述服务请求对应的消息标识;将所述服务调用事件的标识、所述业务标识和所述消息标识写入所述服务请求,以生成所述请求消息。
[0008]可选地,在所述应用高可用切换后,还包括:重新向所述底层服务发送所述请求消息,以使所述底层服务根据所述业务标识进行幂等运算,并根据幂等运算结果返回所述响应结果。
[0009]可选地,所述根据所述服务调用事件的标识,对所述响应结果进行聚合,包括:记录同一个所述服务调用事件对应的请求消息的数量;
在所述同一个服务调用事件对应的响应结果的数量等于所述请求消息的数量的情况下,对同一个服务调用事件对应的所述响应结果进行聚合。
[0010]可选地,在所述服务请求为同步调用的情况下,所述根据聚合结果响应所述服务请求,包括:将所述聚合结果返回给所述应用,以使所述应用根据所述聚合结果执行所述目标任务。
[0011]可选地,在所述服务请求为异步调用的情况下,所述根据聚合结果响应所述服务请求,包括:调用预先注册的异步处理函数,对所述聚合结果进行处理,以执行所述目标任务;其中,所述异步处理函数是所述应用在发送所述服务请求时注册的。
[0012]可选地,按批次获取所述多个服务请求;在所述服务请求为异步调用的情况下,所述根据聚合结果响应所述服务请求,包括:按照各批次所述服务请求对应的所述服务调用事件的先后顺序,调用所述异步处理函数,以按照所述批次的先后顺序,对所述聚合结果进行处理。
[0013]可选地,该方法还包括:根据所述批次的先后顺序,将所述聚合结果的业务处理结果、以及与所述业务处理结果对应的批次入口位置以事务的方式提交到消息系统;在发生高可用之后,从所述消息系统提取批次入口位置和已提交的所述业务处理结果,并根据所述批次入口位置和所述业务处理结果,继续处理所述目标任务。
[0014]为实现上述目的,根据本专利技术实施例的又一方面,提供了一种服务聚合装置。
[0015]本专利技术实施例的一种服务聚合装置包括:获取模块、消息生成模块、结果接收模块和聚合模块;其中,所述获取模块,用于获取应用发送的多个服务请求,所述服务请求指示了目标任务;所述消息生成模块,用于根据所述目标任务生成服务调用事件,并将所述服务调用事件的标识分别写入所述多个服务请求的消息头中,得到所述多个服务请求分别对应的多个请求消息;所述结果接收模块,用于将所述多个请求消息发送给底层服务,并接收所述底层服务针对所述请求消息返回的响应结果;所述聚合模块,用于根据所述服务调用事件的标识,对所述响应结果进行聚合;根据聚合结果响应所述服务请求。
[0016]为实现上述目的,根据本专利技术实施例的又一方面,提供了一种服务聚合系统。
[0017]本专利技术实施例的一种服务聚合系统包括:上述任一方面提供的服务聚合装置以及底层服务;其中,所述服务聚合装置,用于确定所述目标任务对应的业务标识,生成所述服务请求对应的消息标识;并将服务调用事件的标识、所述业务标识和所述消息标识写入所述服务请求,以生成请求消息;将所述请求消息发送给所述底层服务;所述底层服务,用于根据所述业务标识进行幂等运算,并根据幂等运算结果返回所述响应结果。
[0018]为实现上述目的,根据本专利技术实施例的又一方面,提供了一种服务聚合的电子设备。
[0019]本专利技术实施例的一种服务聚合的电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本专利技术实施例的一种服务聚合方法。
[0020]为实现上述目的,根据本专利技术实施例的再一方面,提供了一种计算机可读存储介质。
[0021]本专利技术实施例的一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现本专利技术实施例的一种服务聚合方法。
[0022]上述专利技术中的一个实施例具有如下优点或有益效果:根据应用的服务请求生成请求消息,并接收底层服务根据请求消息返回的响应结果。然后根据服务调用事件的标识,对响应结果进行聚合,并进一步根据聚合结果相应服务请求。由此实现了对服务调用结果进行聚合,并根据聚合结果响应服务请求,而无需应用在每接收到一个服务请求后均进行判断,从而便于应用对底层服务进行调用,并提高应用的运行效率。
[0023]上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
[0024]附图用于更好地理解本专利技术,不构成对本专利技术的不当限定。其中:图1是根据本专利技术实施例的一种服务聚合方法的主要步骤的示意图;图2是根据本专利技术实施例的一种服务聚合装置的主要模块的示意图;图3是根据本专利技术实施例的一种服务聚合系统的主要模块的示意图;图4是本专利技术实施例可以应用于其中的示例性系统架构图;图5是适于用来实现本专利技术实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
[0025]以下结合附图对本专利技术的示范性实施例做出说明,其中包括本专利技术实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种服务聚合方法,其特征在于,包括:获取应用发送的多个服务请求,所述服务请求指示了目标任务;根据所述目标任务生成服务调用事件,并将所述服务调用事件的标识分别写入所述多个服务请求的消息头中,得到所述多个服务请求分别对应的多个请求消息;将所述多个请求消息发送给底层服务,并接收所述底层服务针对所述请求消息返回的响应结果;根据所述服务调用事件的标识,对所述响应结果进行聚合;根据聚合结果响应所述服务请求。2.根据权利要求1所述的方法,其特征在于,所述将所述服务调用事件的标识分别写入所述多个服务请求的消息头中,得到所述多个服务请求分别对应的多个请求消息,包括:针对每一个所述服务请求,执行:确定所述目标任务对应的业务标识,并生成所述服务请求对应的消息标识;将所述服务调用事件的标识、所述业务标识和所述消息标识写入所述服务请求,以生成所述请求消息。3.根据权利要求2所述的方法,其特征在于,在所述应用高可用切换后,还包括:重新向所述底层服务发送所述请求消息,以使所述底层服务根据所述业务标识进行幂等运算,并根据幂等运算结果返回所述响应结果。4.根据权利要求1所述的方法,其特征在于,所述根据所述服务调用事件的标识,对所述响应结果进行聚合,包括:记录同一个所述服务调用事件对应的请求消息的数量;在所述同一个服务调用事件对应的响应结果的数量等于所述请求消息的数量的情况下,对同一个服务调用事件对应的所述响应结果进行聚合。5.根据权利要求1所述的方法,其特征在于,在所述服务请求为同步调用的情况下,所述根据聚合结果响应所述服务请求,包括:将所述聚合结果返回给所述应用,以使所述应用根据所述聚合结果执行所述目标任务。6.根据权利要求1所述的方法,其特征在于,在所述服务请求为异步调用的情况下,所述根据聚合结果响应所述服务请求,包括:调用预先注册的异步处理函数,对所述聚合结果进行处理,以执行所述目标任务;其中,所述异步处理函数是所述应用在发送所述服务请求时注册的。7.根据权利要求1所述的方法,其特征在于,按批次获取所述多个服务请求;在所述服务请求为异步调用的情况下,所述根据聚合结果响应所述服...

【专利技术属性】
技术研发人员:侯德才詹廷蔚彭功林杨欢吕毅强史梦洁吴梓彦吉艳冰柳兆飞
申请(专利权)人:中国证券登记结算有限责任公司
类型:发明
国别省市:

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

1