一种报文处理方法、装置、电子设备及存储介质制造方法及图纸

技术编号:32923763 阅读:14 留言:0更新日期:2022-04-07 12:15
本申请公开了一种报文处理方法、装置、电子设备及存储介质,涉及资源调度领域。本申请中,基于接收目标呼入报文的报文类型,确定对应的报文处理方案,再基于报文处理方案中各个基础处理步骤各自对应的数据处理类型,对具有线程阻塞概率的基础处理步骤设置风险标记,从而在执行关联有风险标记的基础处理步骤时,调用一个空闲专属线程执行关联有风险标记的基础处理步骤。采用本申请,在执行关联有风险标记的基础处理步骤时,基于对具有线程阻塞概率的基础处理步骤设置的风险标记,从专属线程池中,调用一个空闲专属线程执行关联有风险标记的基础处理步骤,从而提高了报文处理的效率。从而提高了报文处理的效率。从而提高了报文处理的效率。

【技术实现步骤摘要】
一种报文处理方法、装置、电子设备及存储介质


[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]获取一个基础处理步骤的数据处理类型;其中,数据处理类型为输入输出IO类型或非IO类型。
[0026]在确定一个基础处理步骤的数据处理类型为IO类型时,确定一个基础处理步骤具有线程阻塞概率,并对应一个基础处理步骤设置风险标记。
[0027]一种可选的实施例中,在依次执行各个基础处理步骤,对目标呼入报文进行相应处理的过程中,执行模块还用于:
[0028]基于设定的状态查询周期,查询所述目标呼入报文的报文处理状态。
[0029]若报文处理状态为异常状态,则停止目标呼入报文的报文处理,并生成相应的报文转换响应。
[0030]将报文转换响应发送给相应的目标终端。
[0031]一种可选的实施例中,在依次执行各个基础处理步骤,对目标呼入报文进行相应处理的过程中,执行模块还用于:
[0032]基于当前基础处理步骤的报文处理结果,生成相应的报文转换信息;其中,报文转换信息为步骤处理成功或步骤处理失败;
[0033]若报文转换信息为步骤处理失败,则结束目标呼入报文的报文处理,并将报文转换信息发送给相应的目标终端。
[0034]若报文转换信息为步骤处理失败,则继续目标呼入报文的报文处理。
[0035]第三方面,提供一种电子设备,所述电子设备包括:
[0036]存储器,用于存储计算机指令。
[0037]处理器,用于读取计算机指令,执行如第一方面所述的报文处理方法。
[0038]第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如第一方面所述的报文处理方法。
[0039]第五方面,提供一种计算机程序产品,所述计算机程序产品在被计算机调用时,使得所述计算机执行如第一方面所述的报文处理方法。
[0040]本申请实施例提供的报文处理方法,基于接收目标呼入报文的报文类型,确定对应的报文处理方案,再基于报文处理方案中各个基础处理步骤各自对应的数据处理类型,对具有线程阻塞概率的基础处理步骤设置风险标记,从而在执行关联有风险标记的基础处理步骤时,调用一个空闲专属线程执行关联有风险标记的基础处理步骤。采用这种方式,在执行关联有风险标记的基础处理步骤时,基于对具有线程阻塞概率的基础处理步骤设置的风险标记,从专属线程池中,调用一个空闲专属线程执行关联有风险标记的基础处理步骤,避免了传统方式中,外部资源一直未响应,空闲线程就会处于阻塞状态的技术缺陷,提高了报文处理的效率。
附图说明
[0041]图1示例性示出了本申请实施例适用的系统架构示意图;
[0042]图2示例性示出了本申请实施例提供的一种异步非阻塞本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种报文处理方法,其特征在于,包括:接收目标呼入报文,并基于所述目标呼入报文的报文类型,获取对应所述报文类型设置的报文处理方案;基于所述报文处理方案包含的各个基础处理步骤各自对应的数据处理类型,对具有线程阻塞概率的基础处理步骤设置风险标记;依次执行所述各个基础处理步骤,对所述目标呼入报文进行相应处理,其中,每执行一个基础处理步骤:若所述一个基础处理步骤关联有风险标记,则从专属线程池中,调用一个空闲专属线程执行所述一个基础处理步骤;若所述一个基础处理步骤未关联风险标记,则从工作线程池中,调用一个空闲工作线程执行所述一个基础处理步骤。2.如权利要求1所述的方法,其特征在于,所述接收目标呼入报文之前,还包括:针对设定的历史时期,获取已处理的各个历史报文转换业务及其各自对应的业务处理记录;针对所述各个历史报文转换业务,分别执行以下操作:基于一个历史报文转换业务对应的业务处理记录,确定已处理的一个历史报文的报文类型,以及相应的至少一个基础处理步骤;针对获得的各个报文类型,分别执行以下操作:将一个报文类型在不同业务处理记录中,对应的各个基础处理步骤进行汇总,获得所述一个报文类型对应的报文处理方案。3.如权利要求2所述的方法,其特征在于,所述将一个报文类型在不同业务处理记录中,对应的各个基础处理步骤进行汇总,获得所述一个报文类型对应的报文处理方案,包括:基于所述各个基础处理步骤各自对应的标识信息,对所述各个基础处理步骤进行去重处理;基于所述各个基础处理步骤各自对应的执行时间,确定去重后的所述各个基础处理步骤各自对应的执行优先级;按照各执行优先级,对去重后的所述各个基础处理步骤进行排序,获得所述一个报文类型对应的报文处理方案。4.如权利要求1、2或3所述的方法,其特征在于,所述基于所述报文处理方案包含的各个基础处理步骤各自对应的数据处理类型,对具有线程阻塞概率的基础处理步骤设置风险标记,包括:针对所述报文处理方案包含的各个基础处理步骤,分别执行以下操作:获取一个基础处理步骤的数据处理类型;其中,所述数据处理类型为输入输出IO类型或非IO类型;在确定所述一个基础处理步骤的数据处理类型为IO类型时,确定所述一个基础处理步骤具有线程阻塞概率,并对应所述一个基础处理步骤设置风险标记。5.如权利要求1、2或3所述的方法,其特征在于,所述依次执行所述各个基础处理步骤,对所述目标呼入报文进行相应处理的过程中,还包括:基于设定的状态查询周期,查询所述目标呼入报文的报文处理状态;若所述报文处理状态为异常状态,则停止所述目标呼入报文的报文处理,并生成相应的报文转换响应;
将所述报文转换响应发送给相应的目标终端。6.如权利要求1、2或3所述的方法,其特征在于,所述依次执行所述各个基础处理步骤,对所述目标呼入报文进行相应处理的过程中,还包括:基于当前基础处理步骤的报文处理结果,生成相应的报文转换信息;其中,所述报文转换信息为步骤处理成功或步骤处理失败;若所述报文转换信息为步骤处理失败,则结束所述目标呼入报文的报文处理,并将所述报文转换响应发送给相应的目标终端;若所述报文转换信息为步骤处理成功,则继续所述目标呼入报文的报文处理。7.一种报文处理装置,其特征在于,包括:接收模块,用于接收目标呼入报文,并基于所述目标呼入报文的报文类型,获取对应所述报文类型设置的报文处理方案;标记模块,用于基于所述报文处理方案包含的各个基础处理步骤各自对应的数据处理类型,对具有线程阻塞概率的基础处理步骤设置风险标记;执行模块,用于依次执行所述各个基础处理步骤,对所述目标呼...

【专利技术属性】
技术研发人员:何鑫尧贺诗浩刘小齐陈立红王赵羿雷鸣
申请(专利权)人:中国建设银行股份有限公司
类型:发明
国别省市:

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

1