请求数据重试系统的制作方法

文档序号:36935213发布日期:2024-02-02 22:01阅读:53来源:国知局
请求数据重试系统的制作方法

本公开的实施例涉及数据重试,具体涉及请求数据重试系统。


背景技术:

1、由于网络不稳定或网络抖动经常会造成接口请求失败的情况,在这种情况下,请求重试就可以调用成功。目前,在分布式场景中的重试可以通过调用新线程、创建失败记录表以及采用一些主流的分布式事务框架进行重试。

2、然而,当采用上述方式时经常会存在如下技术问题:

3、第一,由于重试调用的状态未知,在系统发生重启时,造成数据的丢失,或者在无法调用成功的情况下持续调用,造成应用服务器资源的消耗。

4、第二,在应用服务器无法发出重试请求,或者重试失败的情况下,难以保持系统的正常运行。

5、第三,由于通过人工的方式确定重试结果,导致不能及时地发起重试,同时,人工确定存在误报的可能性较大,导致不能准确地确定重试结果。


技术实现思路

1、本公开的内容部分用于以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。本公开的内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。

2、本公开的一些实施例提出了请求数据重试系统,来解决以上背景技术部分提到的技术问题中的一项或多项。

3、本公开的一些实施例提供了一种请求数据重试系统,该系统包括:应用服务器、重试服务容器、重试服务管理器和目标系统,其中:上述应用服务器被配置成采集服务数据请求信息和与上述服务数据请求信息对应的请求执行状态信息,其中,上述请求执行状态信息包括执行成功和执行失败;上述应用服务器与上述重试服务容器通信连接,其中,上述应用服务器被配置成响应于上述请求执行状态信息为执行失败,将上述服务数据请求信息异步发送至上述重试服务容器;上述重试服务容器与上述重试服务管理器通信连接,其中,上述重试服务容器被配置成对所接收到的服务数据请求信息进行存储和显示,并将所接收到的服务数据请求信息发送至上述重试服务管理器;上述重试服务管理器被配置成确定是否对上述服务数据请求信息发起重试,响应于对上述服务数据请求信息发起重试,向上述重试服务容器发送针对上述服务数据请求信息的重试请求命令;上述目标系统与上述应用服务器通信连接,其中,上述重试服务容器被配置成响应于接收到上述重试请求命令,控制上述应用服务器针对上述服务数据请求信息向上述目标系统发起重试;上述目标系统被配置成将生成的重试结果发送至上述应用服务器;上述应用服务器被配置成将接收到的重试结果发送至上述重试服务容器进行存储。

4、在一些实施例中,上述系统还包括程序托管服务器,其中:

5、上述程序托管服务器与上述重试服务容器通信连接,其中,上述重试服务容器被配置成将重试结果发送至上述程序托管服务器,其中,上述重试结果包括重试成功和重试失败;

6、上述重试服务容器被配置成响应于确定上述重试结果为重试失败,将上述服务数据请求信息发送至上述程序托管服务器;

7、上述程序托管服务器被配置成对接收到的服务数据请求信息发起重试。

8、在一些实施例中,上述应用服务器包括通讯接口和安装在上述通讯接口目标网络层的监听器,其中:

9、上述通讯接口被配置成采集服务数据请求信息和与上述服务数据请求信息对应的请求执行状态信息;

10、上述监听器与上述重试服务容器通信连接,其中,上述监听器被配置成响应于上述请求执行状态信息为执行失败,将上述服务数据请求信息异步发送至上述重试服务容器。

11、在一些实施例中,上述监听器包括过滤器,其中,上述过滤器被配置成响应于上述请求执行状态信息为执行失败,对上述服务数据请求信息进行拦截,并将上述服务数据请求信息异步发送至上述重试服务容器。

12、在一些实施例中,上述重试服务容器包括第一预定数目个以键值对存储数据的数据库和第二预定数目个数据库语句解析器,其中:

13、上述第一预定数目个以键值对存储数据的数据库被配置成支持按照主键实现信息插入、查询和更新;

14、上述第二预定数目个数据库语句解析器被配置成根据预先获取的查询信息进行查询。

15、在一些实施例中,上述重试服务管理器被进一步配置成对所接收到的服务数据请求信息进行更新,得到更新后的服务数据请求信息;

16、上述重试服务管理器被配置成确定是否对上述更新后的服务数据请求信息发起重试,响应于对上述更新后的服务数据请求信息发起重试,上述重试服务管理器向上述重试服务容器发送针对更新后的服务数据请求信息的重试请求命令。

17、在一些实施例中,上述重试服务管理器包括预先训练的检测器,其中,上述重试服务管理器具有按计划重试、重试结果验证和重试效果分析功能,上述预先训练的检测器被配置成检测重试异常状态。

18、在一些实施例中,上述预先训练的检测器通过以下方式得到:

19、获取重试频率集合和数据特征,其中,上述数据特征包括:日期、时间、网络状态、数据库负载和数据处理方案;

20、对上述重试频率集合进行聚类,得到分类结果;

21、将上述分类结果中满足预设条件的分类对应的重试频率确定为负样本集合;

22、对上述负样本集合中的各个负样本进行打标,得到打标负样本集合;

23、将上述打标负样本集合中满足预设条件的打标负样本确定为目标负样本集合;

24、对上述目标负样本集合进行数据增强,得到增强样本集合;

25、基于上述增强样本集合和上述数据特征,对初始的检测器进行训练,得到训练完成的检测器。

26、在一些实施例中,上述预先训练的检测器包括模型训练模块,其中,上述模型训练模块被配置成基于上述增强样本集合和上述数据特征,对初始的检测器进行训练。

27、在一些实施例中,上述模型训练模块被进一步配置成:

28、从上述增强样本集合中进行随机采样处理,以生成子数据集合;

29、根据上述子数据集合,构建多个决策树;

30、将上述子数据集合中的每个子数据和上述数据特征分别输入至上述多个决策树进行训练。

31、本公开的上述各个实施例具有如下有益效果:通过本公开的一些实施例的请求数据重试系统对请求失败的数据进行重试,可以使得分布式中的各个系统数据保持一致性。具体来说,造成系统数据难以保持一致性的原因在于:由于重试调用的状态未知,在系统发生重启时,造成数据的丢失。且在无法调用成功的情况下持续调用,造成应用服务器资源的消耗。基于此,本公开的一些实施例的请求数据重试系统中,上述应用服务器可以采集服务数据请求信息和与上述服务数据请求信息对应的请求执行状态信息。上述应用服务器可以响应于上述请求执行状态信息为执行失败,将上述服务数据请求信息异步发送至上述重试服务容器。上述重试服务容器可以对所接收到的服务数据请求信息进行存储和显示,并将所接收到的服务数据请求信息发送至上述重试服务管理器。上述重试服务管理器可以确定是否对上述服务数据请求信息发起重试,响应于对上述服务数据请求信息发起重试,向上述重试服务容器发送针对上述服务数据请求信息的重试请求命令。上述重试服务容器可以响应于接收到上述重试请求命令,控制上述应用服务器针对上述服务数据请求信息向上述目标系统发起重试。上述目标系统可以将生成的重试结果发送至上述应用服务器。上述应用服务器可以将接收到的重试结果发送至上述重试服务容器进行存储。由此,可以及时的获取与上述服务数据请求信息对应的请求执行状态信息,从而,对失败数据进行重试,即使在系统发生重启时,也能根据请求执行状态信息确定重试情况,从而,可以有效避免数据的丢失,使得各个系统数据保持一致性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1