一种分布式系统接口补偿装置、方法、设备及介质制造方法及图纸

技术编号:39189952 阅读:8 留言:0更新日期:2023-10-27 08:37
本申请公开了一种分布式系统接口补偿装置、方法、设备及介质,涉及通信技术领域,包括:异常请求采集模块,用于捕获当前业务系统对接口提供方系统发起的异常请求,并将异常请求对应的所述接口提供方系统信息、接口信息、异常请求入参信息封装为异常记录;异常记录管理模块,用于接收异常记录,将异常记录存储至预设数据库中;定时扫描模块,用于定时扫描获取预设数据库中存储的异常记录;重试补偿模块,用于基于异常记录模拟当前业务系统对接口提供方系统发起新接口请求,实现接口补偿重试。通过分布式系统接口补偿装置对异常请求进行采集、存储、重试、告警等操作,将各个服务串联起来,通过补偿重试的方式解决业务系统间数据不一致的问题。一致的问题。一致的问题。

【技术实现步骤摘要】
一种分布式系统接口补偿装置、方法、设备及介质


[0001]本专利技术涉及通信
,特别涉及一种分布式系统接口补偿装置、方法、设备及介质。

技术介绍

[0002]分布式系统场景下一个完整的业务流程往往需要多个应用系统间的协作来提供能力,系统间的协作受限于网络、通信、服务状态等一系列原因,一旦某次接口调用出现异常就会造成系统间的不一致。现有基于应用系统重试机制尽量成功的去执行完一个业务流程,受限于重试次数、系统的资源、系统状态等一系列因素,并不能保证能一定消除系统间的不一致。
[0003]综上,如何解决分布式系统集群间的通信失败,而导致的系统间业务状态不一致是本领域有待解决的技术问题。

技术实现思路

[0004]有鉴于此,本专利技术的目的在于提供一种分布式系统接口补偿装置、方法、设备及介质,能够解决分布式系统集群间的通信失败,而导致的系统间业务状态不一致。其具体方案如下:
[0005]第一方面,本申请公开了一种分布式系统接口补偿装置,包括:
[0006]异常请求采集模块,用于捕获当前业务系统对接口提供方系统发起的异常请求,并将所述异常请求对应的所述接口提供方系统信息、接口信息、异常请求入参信息封装为异常记录;
[0007]异常记录管理模块,用于接收所述异常记录,将所述异常记录存储至预设数据库中;
[0008]定时扫描模块,用于定时扫描获取所述预设数据库中存储的异常记录;
[0009]重试补偿模块,用于基于所述异常记录模拟所述当前业务系统对接口提供方系统发起新接口请求,实现接口补偿重试。
[0010]可选的,所述的分布式系统接口补偿装置,还包括:
[0011]异常告警模块,用于若重试补偿模块针对所述异常记录模拟发起正常请求后,所述正常请求失败次数达到预设失败次数阈值时,触发告警操作。
[0012]可选的,所述异常告警模块,包括:
[0013]记录记载单元,用于当所述异常请求采集模块生成异常记录时,在预设缓存中间件中新增所述异常记录,以便异常记录管理模块消费所述预设缓存中间件,获取异常记录;
[0014]异常告警单元,用于当所述预设缓存中间件中的异常记录数量达到预设异常记录数量阈值时,触发告警操作。
[0015]可选的,所述异常请求采集模块,包括:
[0016]异常监听单元,用于监听所述当前业务系统对接口提供方系统发起的接口请求;
[0017]异常请求采集单元,用于若监听的所述接口请求为异常请求,则触发请求捕获操作,并通过注解方式捕获所述异常请求。
[0018]可选的,所述异常记录管理模块,包括:
[0019]异常记录更新单元,用于不同时刻下的对同一当前业务系统和同一接口提供方系统发起的同一接口对应的异常请求进行更新,更新并存储最新时刻下的异常请求对应的异常记录。
[0020]可选的,所述定时扫描模块,包括:
[0021]定时扫描单元,用于根据接口配置信息并按照预设不同接口配置的对应扫描频率滚动查询预设数据库中满足重试补偿要求的异常记录。
[0022]可选的,所述的分布式系统接口补偿装置,还包括:
[0023]信息管理模块,用于对接口提供方系统信息、接口信息、接口配置信息进行存储管理,配置预设失败次数阈值和异常记录数量阈值;对所述接口提供方系统中各个接口关联的注解信息进行关联信息配置;配置不同接口所对应的扫描频率。
[0024]第二方面,本申请公开了一种分布式系统接口补偿方法,包括:
[0025]捕获当前业务系统对接口提供方系统发起的异常请求,并将所述异常请求对应的所述接口提供方系统信息、接口信息、异常请求入参信息封装为异常记录;
[0026]将所述异常记录存储至预设数据库中,以便定时扫描获取所述预设数据库中存储的异常记录;
[0027]基于所述异常记录模拟所述当前业务系统对接口提供方系统发起新接口请求,实现接口补偿重试。
[0028]第三方面,本申请公开了一种电子设备,包括:
[0029]存储器,用于保存计算机程序;
[0030]处理器,用于执行所述计算机程序,以实现前述公开的分布式系统接口补偿方法的步骤。
[0031]第四方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的分布式系统接口补偿方法的步骤。
[0032]由此可见,本申请公开了一种分布式系统接口补偿装置,包括:异常请求采集模块,用于捕获当前业务系统对接口提供方系统发起的异常请求,并将所述异常请求对应的所述接口提供方系统信息、接口信息、异常请求入参信息封装为异常记录;异常记录管理模块,用于接收所述异常记录,将所述异常记录存储至预设数据库中;定时扫描模块,用于定时扫描获取所述预设数据库中存储的异常记录;重试补偿模块,用于基于所述异常记录模拟所述当前业务系统对接口提供方系统发起新接口请求,实现接口补偿重试。可见,通过异常请求采集模块对采集的异常请求进行信息封装形成异常记录,通过异常记录管理模块异常记录的存储以及重试结果的存储,便于问题的分析和解决,然后通过定时扫描模块能够定时获取存储的异常记录,推送至补偿重试模块,实现定时补偿,最后通过补偿重试模块对异常记录对应的请求进行补偿重试。通过分布式系统接口补偿装置对异常请求进行采集、存储、重试、告警等操作,将各个服务串联起来,通过补偿重试的方式解决业务系统间数据不一致的问题。
附图说明
[0033]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0034]图1为本申请公开的一种分布式系统接口补偿装置结构示意图;
[0035]图2为本申请公开的一种分布式系统通用补偿工具整体系统架构及任务处理流程图;
[0036]图3为本申请公开的一种电商业务场景下订单发货创建物流单失败的业务场景补偿流程图;
[0037]图4为本申请公开的一种分布式系统接口补偿方法流程图;
[0038]图5为本申请公开的一种电子设备结构图。
具体实施方式
[0039]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0040]分布式系统场景下一个完整的业务流程往往需要多个应用系统间的协作来提供能力,系统间的协作受限于网络、通信、服务状态等一系列原因,一旦某次接口调用出现异常就会造成系统间的不一致。现有基于应用系统重试机制尽量成功的去执行完一个业务流程,受限于重试次数、系统的资源、系统状态等一系列因素本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分布式系统接口补偿装置,其特征在于,包括:异常请求采集模块,用于捕获当前业务系统对接口提供方系统发起的异常请求,并将所述异常请求对应的所述接口提供方系统信息、接口信息、异常请求入参信息封装为异常记录;异常记录管理模块,用于接收所述异常记录,将所述异常记录存储至预设数据库中;定时扫描模块,用于定时扫描获取所述预设数据库中存储的异常记录;重试补偿模块,用于基于所述异常记录模拟所述当前业务系统对接口提供方系统发起新接口请求,实现接口补偿重试。2.根据权利要求1所述的分布式系统接口补偿装置,其特征在于,还包括:异常告警模块,用于若重试补偿模块针对所述异常记录模拟发起正常请求后,所述正常请求失败次数达到预设失败次数阈值时,触发告警操作。3.根据权利要求1所述的分布式系统接口补偿装置,其特征在于,所述异常告警模块,包括:记录记载单元,用于当所述异常请求采集模块生成异常记录时,在预设缓存中间件中新增所述异常记录,以便异常记录管理模块消费所述预设缓存中间件,获取异常记录;异常告警单元,用于当所述预设缓存中间件中的异常记录数量达到预设异常记录数量阈值时,触发告警操作。4.根据权利要求1所述的分布式系统接口补偿装置,其特征在于,所述异常请求采集模块,包括:异常监听单元,用于监听所述当前业务系统对接口提供方系统发起的接口请求;异常请求采集单元,用于若监听的所述接口请求为异常请求,则触发请求捕获操作,并通过注解方式捕获所述异常请求。5.根据权利要求1所述的分布式系统接口补偿装置,其特征在于,所述异常记录管理模块,包括:...

【专利技术属性】
技术研发人员:刘超贺广来靳程煜陈俊亘
申请(专利权)人:上海微盟企业发展有限公司
类型:发明
国别省市:

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

1