一种业务调用方法、装置以及电子设备制造方法及图纸

技术编号:19489098 阅读:17 留言:0更新日期:2018-11-17 12:02
本说明书提供一种业务调用方法,应用于包括由多个存在业务调用关系的业务子系统构成的串行业务链路的分布式业务系统;包括:业务链路中的头端业务子系统将第一用户发起的针对目标业务数据的数据调用请求,向业务链路中的末端子系统传递;确定是否接收到末端子系统通过业务链路回传的目标业务数据;如果接收到末端子系统通过业务链路回传的目标业务数据,则将目标业务数据在数据临时存储空间中进行缓存,以使得在将第二用户发起的针对所述目标业务数据的数据调用请求,向业务链路中的末端子系统传递后,未接收到末端子系统通过业务链路回传的目标业务数据时,从数据临时存储空间中读取目标业务数据,并将读取到的目标业务数据返回给第二用户。

【技术实现步骤摘要】
一种业务调用方法、装置以及电子设备
本说明书涉及计算机应用领域,尤其涉及一种业务调用方法、装置以及电子设备。
技术介绍
在传统的分布式业务系统中,通常会存在一些彼此之间存在一定的业务调用关系的业务子系统;而且,在一些场景中,这些业务子系统之间的调用关系,可能呈现出一种串行的情况;例如,假设在一个分布式业务系统中包括子系统A、B、C,子系统A收到用户的业务调用请求后,可以将业务调用请求传递给子系统B发起调用,子系统B再继续将业务调用请求传递给子系统B发起调用,最后子系统C在完成与上述业务调用请求对应的业务调用后,可以将被调用的业务数据回传给子系统B,子系统B再继续将业务数据回传给子系统A。
技术实现思路
本说明书提出一种业务调用方法,应用于分布式业务系统;所述分布式业务系统包括由多个存在业务调用关系的业务子系统构成的业务链路;其中,所述业务链路为串行业务链路;所述方法包括:所述业务链路中的头端业务子系统将第一用户发起的针对目标业务数据的数据调用请求,向所述业务链路中的末端子系统传递;确定是否接收到所述末端子系统通过所述业务链路回传的所述目标业务数据;如果接收到所述末端子系统通过所述业务链路回传的所述目标业务数据,则将所述目标业务数据在数据临时存储空间中进行缓存,以使在将第二用户发起的针对所述目标业务数据的数据调用请求,向所述业务链路中的末端子系统传递后,未接收到所述末端子系统通过所述业务链路回传的所述目标业务数据时,从所述数据临时存储空间中读取所述目标业务数据,并将读取到的所述目标业务数据返回给所述第二用户。可选的,还包括:确定所述目标业务数据是否在所述数据临时存储空间中缓存成功;如果所述目标业务数据在所述数据临时存储空间中缓存成功,将所述目标业务数据返回给所述第一用户。可选的,还包括:如果未接收到所述末端子系统通过所述业务链路回传的所述目标业务数据,则从所述数据临时存储空间中读取所述目标业务数据,并将读取到的所述目标业务数据返回给所述第一用户。可选的,所述确定是否接收到到所述末端子系统通过所述业务链路回传的所述目标业务数据,包括:确定是否在预设的超时时长内收到所述业务链路中的末端子系统回传的所述目标业务数据;如果是,确定接收到所述末端子系统通过所述业务链路回传的所述目标业务数据;如果否,确定未接收到所述末端子系统通过所述业务链路回传的所述目标业务数据。可选的,所述确定是否在预设的超时时长内收到所述业务链路中的末端子系统回传的所述目标业务数据之前,还包括:确定是否在预设的超时时长内接收到所述业务链路上任一下游子系统回传的故障消息;如果是,确定未接收到到所述末端子系统通过所述业务链路回传的所述目标业务数据;如果否,进一步确定是否在预设的超时时长内收到所述业务链路中的末端子系统回传的所述目标业务数据。可选的,所述数据临时存储空间为所述头端业务子系统的本地缓存空间;或者,所述头端业务子系统对接的远程缓存空间。可选的,所述数据临时存储空间中缓存的业务数据被预设了缓存有效期;所述方法还包括:当所述数据临时存储空间中缓存的业务数据的缓存有效期超时,则从所述数据临时存储空间中删除该业务数据。本说明书还提出一种业务调用装置,应用于分布式业务系统;所述分布式业务系统包括由多个存在业务调用关系的业务子系统构成的业务链路;其中,所述业务链路为串行业务链路;所述装置包括:传递模块,将第一用户发起的针对目标业务数据的数据调用请求,向所述业务链路中的末端子系统传递;确定模块,确定是否接收到所述末端子系统通过所述业务链路回传的所述目标业务数据;缓存模块,如果接收到所述末端子系统通过所述业务链路回传的所述目标业务数据,则将所述目标业务数据在数据临时存储空间中进行缓存,以使在将第二用户发起的针对所述目标业务数据的数据调用请求,向所述业务链路中的末端子系统传递后,未接收到所述末端子系统通过所述业务链路回传的所述目标业务数据时,从所述数据临时存储空间中读取所述目标业务数据,并将读取到的所述目标业务数据返回给所述第二用户。可选的,所述确定模块进一步:确定所述目标业务数据是否在所述数据临时存储空间中缓存成功;还包括:返回模块,如果所述目标业务数据在所述数据临时存储空间中缓存成功,将所述目标业务数据返回给所述第一用户。可选的,还包括:读取模块,如果未接收到所述末端子系统通过所述业务链路回传的所述目标业务数据,则从所述数据临时存储空间中读取所述目标业务数据,并将读取到的所述目标业务数据返回给所述第一用户。可选的,所述确定模块:确定是否在预设的超时时长内收到所述业务链路中的末端子系统回传的所述目标业务数据;如果是,确定接收到所述末端子系统通过所述业务链路回传的所述目标业务数据;如果否,确定未接收到所述末端子系统通过所述业务链路回传的所述目标业务数据。可选的,所述确定模块进一步:在确定是否在预设的超时时长内收到所述业务链路中的末端子系统回传的所述目标业务数据之前,确定是否在预设的超时时长内接收到所述业务链路上任一下游子系统回传的故障消息;如果是,确定未接收到到所述末端子系统通过所述业务链路回传的所述目标业务数据;如果否,进一步确定是否在预设的超时时长内收到所述业务链路中的末端子系统回传的所述目标业务数据。可选的,所述数据临时存储空间为所述头端业务子系统的本地缓存空间;或者,所述头端业务子系统对接的远程缓存空间。可选的,所述数据临时存储空间中缓存的业务数据被预设了缓存有效期;可选的,所述缓存模块进一步:当所述数据临时存储空间中缓存的业务数据的缓存有效期超时,则从所述数据临时存储空间中删除该业务数据。本说明书还提出一种电子设备,所述电子设备所在的分布式通中,包括由多个存在业务调用关系的业务子系统构成的业务链路;其中,所述业务链路为串行业务链路,所述电子设备包括:处理器;用于存储机器可执行指令的存储器;其中,通过读取并执行所述存储器存储的与业务调用的控制逻辑对应的机器可执行指令,所述处理器被促使:将第一用户发起的针对目标业务数据的数据调用请求,向所述业务链路中的末端子系统传递;确定是否接收到所述末端子系统通过所述业务链路回传的所述目标业务数据;如果接收到所述末端子系统通过所述业务链路回传的所述目标业务数据,则将所述目标业务数据在数据临时存储空间中进行缓存,以使在将第二用户发起的针对所述目标业务数据的数据调用请求,向所述业务链路中的末端子系统传递后,未接收到所述末端子系统通过所述业务链路回传的所述目标业务数据时,从所述数据临时存储空间中读取所述目标业务数据,并将读取到的所述目标业务数据返回给所述第二用户。通过以上技术方案,在分布式业务系统的业务场景下,当用户依托于由多个存在业务调用关系的业务子系统构成的串行业务链路,来发起针对目标业务数据的数据调用时,通过引入数据临时存储空间,可以在上述串行业务链路中的任一下游子系统发生故障的情况下,仍然能够从上述数据临时存储空间中正常的调用到相关的业务数据,可以提高业务链路的稳定性。附图说明图1是本说明书一实施例示出的一种业务调用方法的流程图;图2是本说明书一实施例示出的一种典型的串行业务链路的示意图;图3是本说明书一实施例示出的一种在分布式业务系统的串行业务链路中完成业务数据调用的流程图;图4是本说明书一实施例提本文档来自技高网...

【技术保护点】
1.一种业务调用方法,应用于分布式业务系统;所述分布式业务系统包括由多个存在业务调用关系的业务子系统构成的业务链路;其中,所述业务链路为串行业务链路;所述方法包括:所述业务链路中的头端业务子系统将第一用户发起的针对目标业务数据的数据调用请求,向所述业务链路中的末端子系统传递;确定是否接收到所述末端子系统通过所述业务链路回传的所述目标业务数据;如果接收到所述末端子系统通过所述业务链路回传的所述目标业务数据,则将所述目标业务数据在数据临时存储空间中进行缓存,以使在将第二用户发起的针对所述目标业务数据的数据调用请求,向所述业务链路中的末端子系统传递后,未接收到所述末端子系统通过所述业务链路回传的所述目标业务数据时,从所述数据临时存储空间中读取所述目标业务数据,并将读取到的所述目标业务数据返回给所述第二用户。

【技术特征摘要】
1.一种业务调用方法,应用于分布式业务系统;所述分布式业务系统包括由多个存在业务调用关系的业务子系统构成的业务链路;其中,所述业务链路为串行业务链路;所述方法包括:所述业务链路中的头端业务子系统将第一用户发起的针对目标业务数据的数据调用请求,向所述业务链路中的末端子系统传递;确定是否接收到所述末端子系统通过所述业务链路回传的所述目标业务数据;如果接收到所述末端子系统通过所述业务链路回传的所述目标业务数据,则将所述目标业务数据在数据临时存储空间中进行缓存,以使在将第二用户发起的针对所述目标业务数据的数据调用请求,向所述业务链路中的末端子系统传递后,未接收到所述末端子系统通过所述业务链路回传的所述目标业务数据时,从所述数据临时存储空间中读取所述目标业务数据,并将读取到的所述目标业务数据返回给所述第二用户。2.根据权利要求1所述的方法,还包括:确定所述目标业务数据是否在所述数据临时存储空间中缓存成功;如果所述目标业务数据在所述数据临时存储空间中缓存成功,将所述目标业务数据返回给所述第一用户。3.根据权利要求1所述的方法,还包括:如果未接收到所述末端子系统通过所述业务链路回传的所述目标业务数据,则从所述数据临时存储空间中读取所述目标业务数据,并将读取到的所述目标业务数据返回给所述第一用户。4.根据权利要求1所述的方法,所述确定是否接收到到所述末端子系统通过所述业务链路回传的所述目标业务数据,包括:确定是否在预设的超时时长内收到所述业务链路中的末端子系统回传的所述目标业务数据;如果是,确定接收到所述末端子系统通过所述业务链路回传的所述目标业务数据;如果否,确定未接收到所述末端子系统通过所述业务链路回传的所述目标业务数据。5.根据权利要求4所述的方法,所述确定是否在预设的超时时长内收到所述业务链路中的末端子系统回传的所述目标业务数据之前,还包括:确定是否在预设的超时时长内接收到所述业务链路上任一下游子系统回传的故障消息;如果是,确定未接收到到所述末端子系统通过所述业务链路回传的所述目标业务数据;如果否,进一步确定是否在预设的超时时长内收到所述业务链路中的末端子系统回传的所述目标业务数据。6.根据权利要求1所述的方法,所述数据临时存储空间为所述头端业务子系统的本地缓存空间;或者,所述头端业务子系统对接的远程缓存空间。7.根据权利要求1所述的方法,所述数据临时存储空间中缓存的业务数据被预设了缓存有效期;所述方法还包括:当所述数据临时存储空间中缓存的业务数据的缓存有效期超时,则从所述数据临时存储空间中删除该业务数据。8.一种业务调用装置,应用于分布式业务系统;所述分布式业务系统包括由多个存在业务调用关系的业务子系统构成的业务链路;其中,所述业务链路为串行业务链路;所述装置包括:传递模块,将第一用户发起的针对目标业务数据的数据调用请求,向所述业务链路中的末端子系统传递;确定模块,确定是否接收到所述末端子系统通过所述业务链路回传的所述目标业务数据;缓存模块,如果接收到所述末端子系统通过所述业务链路回传的所述目标业务数...

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

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

1