报文处理方法、装置、计算机设备和存储介质与流程
- 国知局
- 2024-08-02 14:52:41
本技术涉及智能数据分析,特别是涉及一种报文处理方法、装置、计算机设备和存储介质。
背景技术:
1、金融机构的报文平台,通常需要承担外联系统的接入,以及实现金融机构内部系统的报文组装、报文收发、报文校验、路由清分等功能。
2、相关技术中,各金融机构的报文平台通常是通过国际资金清算系统swift进行发送,swift由环球同业银行金融电讯协会管理,swift的使用,给金融机构的结算提供了安全、可靠、快捷、标准化、自动化的通讯业务,从而大大提高了金融机构的结算速度。
3、然而,报文平台通过swift发送报文流程缓慢,报文经过多次流转后才发到目的系统,导致报文发送的效率低下。
技术实现思路
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、按照所述报文回执数据格式,生成所述读取到的报文对应的报文回执;
32、将所述报文回执发送至所述来源系统标识对应的来源系统。
33、第二方面,本技术还提供了一种报文处理装置,包括:
34、第一报文写入模块,用于响应于接收到任意来源系统发送的报文,将所述报文写入第一数据库中;
35、处理线程启动模块,用于获取所述第一数据库中在历史周期内写入的历史报文数量,根据所述历史报文数量启动多个报文处理线程;
36、标识获取模块,用于调用所述多个报文处理线程中的空闲报文处理线程,从所述第一数据库中读取报文并进行解析,获得读取到的报文的来源系统标识和目的系统标识;
37、第二报文写入模块,用于响应于所述读取到的报文的来源系统标识和目的系统标识满足路由规则,通过所述空闲报文处理线程,将所述读取到的报文写入所述目的系统标识对应的第二数据库;
38、下载通知发送模块,用于向所述目的系统标识对应的目的系统发送报文下载通知,以指示所述目的系统从所述第二数据库中进行报文下载。
39、在其中一个实施例中,所述第一报文写入模块,还用于响应于接收到任意来源系统发送的报文,根据所述报文中的来源系统标识,将所述报文写入所述第一数据库中所述来源系统标识对应的数据表中;所述处理线程启动模块,还用于获取所述第一数据库中各数据表在历史周期内写入的历史报文数量,根据各数据表各自写入的历史报文数量,确定各数据表各自对应的报文处理线程数量;针对每个数据表,启动与所述数据表对应的报文处理线程数量匹配的多个报文处理线程,所启动的多个报文处理线程用于处理所述数据表的报文。
40、在其中一个实施例中,所述处理线程启动模块,还用于:针对每个数据表,从预先划分的多个数值范围中,确定所述数据表写入的历史报文数量所属的数值范围;获取所述数值范围对应的预设线程数量,将所述预设线程数量确定为所述数据表对应的报文处理线程数量;其中,所述多个数值范围中,数值范围内数值越大,所对应的预设线程数量的数值越大。
41、在其中一个实施例中,所述第二报文写入模块,还用于:响应于所述读取到的报文的来源系统标识和目的系统标识满足路由规则,通过所述空闲报文处理线程,获取预设的报文校验规则;通过所述空闲报文处理线程,根据所述预设的报文校验规则,对所述读取到的报文进行校验;当校验结果指示校验通过,将所述读取到的报文写入所述目的系统标识对应的第二数据库。
42、在其中一个实施例中,所述装置还包括:下载请求响应模块,用于当接收到多个报文下载请求,获取各报文下载请求所请求下载的报文对应的报文类型;根据各报文下载请求所请求下载的报文对应的报文类型,确定各报文下载请求对应的优先级;按照优先级从高到低的顺序依次响应各所述报文下载请求。
43、在其中一个实施例中,所述装置还包括:轮询模块,用于:按照预设的时间间隔轮询所述第二数据库中的未下载的报文;当任意一个未下载的报文的等待下载时长超过预设时间阈值,再次向所述目的系统标识对应的目的系统发送下载通知;对于重新发送下载通知的报文,重新开始等待下载时长的计时。
44、在其中一个实施例中,所述装置还包括:报文回执生成模块,用于在所述报文下载通知发送成功后,获取预设的报文回执数据格式;按照所述报文回执数据格式,生成所述读取到的报文对应的报文回执;将所述报文回执发送至所述来源系统标识对应的来源系统。
45、第三方面,本技术还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述报文处理方法的步骤。
46、第四方面,本技术还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述报文处理方法的步骤。
47、第五方面,本技术还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述报文处理方法的步骤。
48、上述报文处理方法、装置、计算机设备、存储介质和计算机程序产品,响应于接收到任意来源系统发送的报文,将报文写入第一数据库中,获取第一数据库中在历史周期内写入的历史报文数量,根据历史报文数量启动多个报文处理线程,调用多个报文处理线程中的空闲报文处理线程,从第一数据库中读取报文并进行解析,获得读取到的报文的来源系统标识和目的系统标识,由于可以根据历史报文数量来启动报文处理线程,将历史报文数量作为参考来进行线程启动,确保在报文数量多时,能够有足够多的线程来进行报文处理,初步保证了报文发送效率,进一步地,当读取到的报文的来源系统标识和目的系统标识满足路由规则,通过空闲报文处理线程,将读取到的报文写入目的系统标识对应的第二数据库,由于可以将满足路由规则的报文直接写入第二数据库,避免了通过swift进行发送,显著提高了报文发送效率,最后向目的系统标识对应的目的系统发送报文下载通知,以指示目的系统从第二数据库中进行报文下载,只需要发送报文下载通知即可完成报文发送,进一步提高了报文发送效率。
本文地址:https://www.jishuxx.com/zhuanli/20240801/244129.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表