一种数据重发处理方法及装置与流程

文档序号:32340347发布日期:2022-11-26 09:33阅读:100来源:国知局
一种数据重发处理方法及装置与流程

1.本发明涉及数据处理技术领域,具体涉及一种数据重发处理方法及装置。


背景技术:

2.在两个不同系统进行数据交互时,因为处理数据的速度不同,往往会使用中间件,例如kafka,mq。通常是一个系统把数据发送到中间件,另一个系统再从中间件提取数据。这个过程中有可能发生数据的丢失,但是对于另外一个系统来说,不能确认是数据丢失了,还是其他原因,而且对于重要的数据来说,这种传输过程中的数据丢失可能会造成大量损失。


技术实现要素:

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.所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如下方法:
32.获取包含有发送失败数据的数据表;
33.从所述数据表中读取发送失败数据,并向中间件重新发送数据;
34.接收中间件反馈的重发数据接收结果,若确定所述重发数据接收结果为数据发送失败,则继续执行所述从所述数据表中读取发送失败数据,并向中间件重新发送数据的步骤。
35.本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现如下方法:
36.获取包含有发送失败数据的数据表;
37.从所述数据表中读取发送失败数据,并向中间件重新发送数据;
38.接收中间件反馈的重发数据接收结果,若确定所述重发数据接收结果为数据发送失败,则继续执行所述从所述数据表中读取发送失败数据,并向中间件重新发送数据的步骤。
39.本发明实施例提供的数据重发处理方法及装置,获取包含有发送失败数据的数据表;从所述数据表中读取发送失败数据,并向中间件重新发送数据;接收中间件反馈的重发数据接收结果,若确定所述重发数据接收结果为数据发送失败,则继续执行所述从所述数据表中读取发送失败数据,并向中间件重新发送数据的步骤,能够提高数据的发送成功率。
附图说明
40.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
41.图1是本发明一实施例提供的数据重发处理方法的流程示意图。
42.图2是本发明另一实施例提供的数据重发处理方法的流程示意图。
43.图3是本发明实施例提供的数据重发处理方法模块化的结构示意图。
44.图4是本发明一实施例提供的数据重发处理装置的结构示意图。
45.图5为本发明实施例提供的计算机设备实体结构示意图。
具体实施方式
46.为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互任意组合。
47.图1是本发明一实施例提供的数据重发处理方法的流程示意图,如图1所示,本发明实施例提供的数据重发处理方法,包括:
48.步骤s1:获取包含有发送失败数据的数据表。
49.步骤s2:从所述数据表中读取发送失败数据,并向中间件重新发送数据。
50.步骤s3:接收中间件反馈的重发数据接收结果,若确定所述重发数据接收结果为数据发送失败,则继续执行所述从所述数据表中读取发送失败数据,并向中间件重新发送数据的步骤。
51.在上述步骤s1中,装置获取包含有发送失败数据的数据表。装置可以是执行该方法的计算机设备等,例如为服务器。本技术技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。获取包含有发送失败数据的数据表,包括:
52.向所述中间件发送数据;
53.接收中间件反馈的数据接收结果,若确定所述数据接收结果为数据发送失败,则将发送失败数据记录在所述数据表中。
54.当向中间件发送数据失败时,会把这条数据记录在数据库表中,并标记状态为0,可以每过5分钟,会启动定时读取状态为0的数据,并向相应的中间件发送数据,如果发送成功,则将状态标记为1,否则不修改,等待下一次定时发送。
55.在上述步骤s2中,装置从所述数据表中读取发送失败数据,并向中间件重新发送数据。可以参照上述示例,采用定时启动重发数据的重发方式,也可以在每次纪录一条发送失败数据时,即时从数据表中读取该条发送失败数据,并实时向中间件重新发送数据。
56.在上述步骤s3中,装置接收中间件反馈的重发数据接收结果,若确定所述重发数据接收结果为数据发送失败,则继续执行所述从所述数据表中读取发送失败数据,并向中间件重新发送数据的步骤。继续执行所述从所述数据表中读取发送失败数据,并向中间件重新发送数据的步骤的执行周期可以根据实际情况自主设置,参照上述举例,可选为5分钟。
57.本发明实施例提供的数据重发处理方法,获取包含有发送失败数据的数据表;从所述数据表中读取发送失败数据,并向中间件重新发送数据;接收中间件反馈的重发数据接收结果,若确定所述重发数据接收结果为数据发送失败,则继续执行所述从所述数据表中读取发送失败数据,并向中间件重新发送数据的步骤,能够提高数据的发送成功率。
58.进一步地,如图2所示,所述数据重发处理方法还包括:
59.步骤s4:记录发送失败的目标数据的发送次数,若确定所述发送次数大于预设次数阈值,则不再重复发送所述目标数据,并生成提示所述目标数据无法发送的提示消息。预设次数阈值可以根据实际情况自主设置。可以理解的是,某条数据第一次发送失败,就将该数据确定为目标数据,此时发送次数为1次,此后每重发一次,且发送还是失败,则发送次数加1次,直到发送次数累计超过预设次数阈值,就不再重发该目标数据。
60.说明该条数据发送失败不是偶然原因,为了不再浪费数据发送资源,且保证数据能够及时发送成功,可以生成上述提示消息,相关工作人员通过该提示消息可以通过人工介入的方式保证该条数据能够发送成功。
61.进一步地,所述从所述数据表中读取发送失败数据,并向中间件重新发送数据,包括:
62.定时从所述数据表中读取发送失败数据,并向中间件重新发送数据。为了使得重新发送数据不占用数据高峰时段,可以选择非工作高峰时段定时从所述数据表中读取发送失败数据,并向中间件重新发送数据,例如选择晚上9点定时从所述数据表中读取发送失败数据,并向中间件重新发送数据。
63.进一步地,获取包含有发送失败数据的数据表,包括:
64.向所述中间件发送数据;可参照上述说明,不再赘述。
65.接收中间件反馈的数据接收结果,若确定所述数据接收结果为数据发送失败,则将发送失败数据记录在所述数据表中。可参照上述说明,不再赘述。
66.如图3所示,可以通过模块化实现本发明实施例的方法,具体包括:
67.失败数据储存模块1:保存未能成功发送的数据。
68.定时重发模块2:对未成功发送的数据进行重发。
69.需要说明的是,本发明实施例提供的数据重发处理方法可用于金融领域,也可用于除金融领域之外的任意技术领域,本发明实施例对数据重发处理方法的应用领域不做限定。
70.图4是本发明一实施例提供的数据重发处理装置的结构示意图,如图4所示,本发明实施例提供的数据重发处理装置,包括获取单元401、重发单元402和循环单元403,其中:
71.获取单元401用于获取包含有发送失败数据的数据表;重发单元402用于从所述数据表中读取发送失败数据,并向中间件重新发送数据;循环单元403用于接收中间件反馈的重发数据接收结果,若确定所述重发数据接收结果为数据发送失败,则继续执行所述从所述数据表中读取发送失败数据,并向中间件重新发送数据的步骤。
72.具体的,装置中的获取单元401用于获取包含有发送失败数据的数据表;重发单元402用于从所述数据表中读取发送失败数据,并向中间件重新发送数据;循环单元403用于接收中间件反馈的重发数据接收结果,若确定所述重发数据接收结果为数据发送失败,则继续执行所述从所述数据表中读取发送失败数据,并向中间件重新发送数据的步骤。
73.本发明实施例提供的数据重发处理装置,获取包含有发送失败数据的数据表;从所述数据表中读取发送失败数据,并向中间件重新发送数据;接收中间件反馈的重发数据接收结果,若确定所述重发数据接收结果为数据发送失败,则继续执行所述从所述数据表中读取发送失败数据,并向中间件重新发送数据的步骤,能够提高数据的发送成功率。
74.进一步地,所述数据重发处理装置还用于:
75.记录发送失败的目标数据的发送次数,若确定所述发送次数大于预设次数阈值,则不再重复发送所述目标数据,并生成提示所述目标数据无法发送的提示消息。
76.进一步地,所述重发单元402具体用于:
77.定时从所述数据表中读取发送失败数据,并向中间件重新发送数据。
78.进一步地,所述获取单元401具体用于:
79.向所述中间件发送数据;
80.接收中间件反馈的数据接收结果,若确定所述数据接收结果为数据发送失败,则将发送失败数据记录在所述数据表中。
81.本发明实施例提供数据重发处理装置的实施例具体可以用于执行上述各方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
82.图5为本发明实施例提供的计算机设备实体结构示意图,如图5所示,所述计算机设备包括:存储器501、处理器502及存储在存储器501上并可在处理器502上运行的计算机程序,所述处理器502执行所述计算机程序时实现如下方法:
83.获取包含有发送失败数据的数据表;
84.从所述数据表中读取发送失败数据,并向中间件重新发送数据;
85.接收中间件反馈的重发数据接收结果,若确定所述重发数据接收结果为数据发送失败,则继续执行所述从所述数据表中读取发送失败数据,并向中间件重新发送数据的步骤。
86.本实施例公开一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现如下方法:
87.获取包含有发送失败数据的数据表;
88.从所述数据表中读取发送失败数据,并向中间件重新发送数据;
89.接收中间件反馈的重发数据接收结果,若确定所述重发数据接收结果为数据发送失败,则继续执行所述从所述数据表中读取发送失败数据,并向中间件重新发送数据的步骤。
90.本实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如下方法:
91.获取包含有发送失败数据的数据表;
92.从所述数据表中读取发送失败数据,并向中间件重新发送数据;
93.接收中间件反馈的重发数据接收结果,若确定所述重发数据接收结果为数据发送失败,则继续执行所述从所述数据表中读取发送失败数据,并向中间件重新发送数据的步骤。
94.本发明实施例与现有技术中的技术方案相比,获取包含有发送失败数据的数据表;从所述数据表中读取发送失败数据,并向中间件重新发送数据;接收中间件反馈的重发数据接收结果,若确定所述重发数据接收结果为数据发送失败,则继续执行所述从所述数据表中读取发送失败数据,并向中间件重新发送数据的步骤,能够提高数据的发送成功率。
95.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实
施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
96.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
97.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
98.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
99.在本说明书的描述中,参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
100.以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1