System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及信息处理,特别是涉及一种报文处理方法、装置、服务器及存储介质。
技术介绍
1、在中国人民银行(以下简称“人行”)推进全国统一集中账户管理系统(以下简称“人行新账管系统”)建设的背景下,商业银行需要按照人行要求,通过人行数据交换管理平台(data exchange management platform,demp)接入人行新账管系统。人行新账管系统提供了“总对总”接口报备模式,以实现单位、个人银行结算账户开立、变更、撤销业务的审批和账户信息备案。
2、在报文交互过程中,商业银行与人行新账管系统之间存在大量的数据交互。特别是在对公账户开立后,商业银行的全国各网点会分批次向人行新账管系统报送相关信息。人行新账管系统在收到这些报备内容后,会进行内部处理,并集中将全国多个网点一定时间内发送的核实信息,一次性返回给商业银行进行处理。这些返回的报文通常包含多家网点的开户信息,单次需要处理的账户数据可达十万至百万级别。
3、然而,商业银行在处理这些返回的报文时,现有技术通常为接收后直接对其进行业务逻辑处理。当面对含有大量信息的长报文时,这种直接处理的方式不仅导致交互接口的响应时间过长,还使得处理过程高度耦合,严重影响了报文处理的效率和稳定性。因此,亟需研究一种高效稳定的报文处理方法。
技术实现思路
1、基于上述问题,本申请提供了一种报文处理方法、装置、服务器和存储介质。目的是提升报文处理的效率和稳定性。
2、本申请实施例公开了如下技术方案:
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.一种报文处理方法,其特征在于,应用于商业银行与人行新账管系统的交互,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,在所述执行所述多个异步任务之后,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,在所述若某个异步任务执行失败,则对该异步任务进行失败重试之后,所述方法还包括:
4.根据权利要求3所述的方法,其特征在于,所述基于所述失败重试次数,启动相应的失败处理机制,包括:
5.根据权利要求3所述的方法,其特征在于,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,所述基于所述报文的报文类型生成待处理文件,并将所述待处理文件存储至所述网络存储器中,包括:
7.一种报文处理装置,其特征在于,应用于商业银行与人行新账管系统的交互,所述装置包括:
8.根据权利要求7所述的装置,其特征在于,所述装置还包括
9.一种报文处理服务器,其特征在于,包括:处理器以及存储器:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储程序代码,
...【技术特征摘要】
1.一种报文处理方法,其特征在于,应用于商业银行与人行新账管系统的交互,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,在所述执行所述多个异步任务之后,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,在所述若某个异步任务执行失败,则对该异步任务进行失败重试之后,所述方法还包括:
4.根据权利要求3所述的方法,其特征在于,所述基于所述失败重试次数,启动相应的失败处理机制,包括:
5.根据权利要求3所述的方法,其特征在于,所述方法还包括:
6.根据权...
【专利技术属性】
技术研发人员:李梓韬,
申请(专利权)人:中国农业银行股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。