一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种系统间消息的异步处理系统的制作方法

2021-10-24 06:41:00 来源:中国专利 TAG:系统 消息 实施 计算机


1.本发明实施例涉及计算机技术领域,尤其涉及一种系统间消息的异步处理系统。


背景技术:

2.随着金融科技的快速发展,it系统的不断建设业务系统间的交互变得愈加频繁,业务系统间接口数据量呈几何级数增长。随着业务系统增多,对交互处理能力也越来越高。如何提供一种强处理、高并发和高稳定性的系统间消息的处理方法显得尤为重要。
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.进一步地,所述系统还包括:参数管理模块,用于对系统参数和业务参数进行维护;并按照设定周期将数据库中的参数信息加载到redis缓存中,以供异步处理系统在使用时从所述缓存读取参数。
31.进一步地,所述系统还包括:批量处理模块,用于按照业务属性确定处理时段;当时间达到所述处理时段时,批量处理对应的业务。
32.进一步地,所述系统还包括:监控处理模块;所述监控处理模块包括:资源监控单元、服务监控单元、数据库监控单元、缓存监控单元及监控告警单元。
33.本发明实施例公开了一种系统间消息的异步处理系统,包括:请求处理模块、授权处理模块、报文处理模块、消息处理模块、流水信息处理模块以及日志处理模块;请求处理模块用于接收多个上游系统通过不同通道发送的请求消息,并将请求消息对应的下游系统发送来的应答消息写入对应的通道中,以将应答消息异步返回至对应的上游系统;授权处
理模块用于判断上游系统是否注册,若注册,则允许上游系统接入;报文处理模块用于对报文进行格式转化、加密解密、特殊处理及对报文池进行管理;消息处理模块用于计算消息路由、消息发送、消息清理、消息缓存、消息重发及消息异步中转;流水信息处理模块用于将流水信息写入流水队列,并异步从流水队列中读取流水信息,将读取的流水信息进行登记;日志处理模块用于将日志信息写入日志队列,并异步从日志队列中读取日志信息,将读取的日志信息进行登记。本发明实施例提供的系统间消息的异步处理系统,可以提高系统间交互的响应速度以及处理性能。
附图说明
34.图1是本发明实施例一中一种系统间消息的异步处理系统的结构示意图;
35.图2是本发明实施例一中的消息路由计算单元的原理图;
36.图3是本发明实施例一中的消息发送单元的原理图;
37.图4是本发明实施例一中的消息清理单元的原理图;
38.图5是本发明实施例一中的流水信息处理模块的原理图。
具体实施方式
39.下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
40.实施例一
41.图1为本发明实施例一提供的一种系统间消息的异步处理系统的结构示意图,如图1所示,该系统包括:请求处理模块110、授权处理模块120、报文处理模块130、消息处理模块140、流水信息处理模块150以及日志处理模块160。
42.请求处理模块110用于接收多个上游系统通过不同通道发送的请求消息,并将请求消息对应的下游系统发送来的应答消息写入对应的通道中,以将应答消息异步返回至对应的上游系统。
43.其中,请求信息中携带有报文。报文包括报文头和报文体两部分,报文体由属性域和数据域两部分组成。属性域用于存放与数据域中的应用数据有关的各项属性,数据域存放各应用系统所需传输的业务数据,采用文本格式或者json格式。消息的属性域包括有9项数据元,参见表1。
[0044][0045]
具体的,请求处理模块110包括请求接收单元、应答选择单元、应答发送单元。其中,请求接收单元用于接收多个上游系统通过不同通道发送的请求消息,并建立请求消息的消息标识与通道标识的对应关系,将对应关系进行缓存。应答选择单元用于根据下游系统发送来的应答消息的消息标识和对应关系选择通道。应答发送单元用于将应答消息写入选择的通道中,以通过选择的通道将应答消息返回至上游系统。
[0046]
其中,请求消息的消息标识与应答消息的消息标识相同。消息标识可以是表1中的“msgid”数据元。
[0047]
本实施例中,请求接收单元基于netty完成,通过不同的通道(channel)完成请求消息的接收,在收到请求消息后将请求消息中的msgid及其对应channel的标识(ctx)存入缓存区中,以便后续进行应答选择处理。应答选择单元通过使用应答消息中的msgid匹配到对应channel的ctx,以便将将应答消息写入原channel,实现消息的异步原路返回。应答发送单元将应答消息写入所选择的channel中,以将应答消息返回至上游系统。
[0048]
授权处理模块120用于判断上游系统是否注册,若注册,则允许上游系统接入。
[0049]
本实施例中,只有注册登记的上游系统才允许接入。
[0050]
报文处理模块130用于对报文进行格式转化、加密解密、特殊处理及对报文池进行管理。
[0051]
具体的,报文处理模块130包括请求报文转化单元、应答报文转化单元、报文加解密单元、特殊报文处理单元及报文池管理单元。
[0052]
其中,请求报文转化单元用于将请求报文的格式根据配置信息转化成系统内部格式。应答报文转化单元用于将应答报文从内部报文格式转化为外部系统可识别的格式。报文加解密单元用于对请求报文进行加密,对应答报文进行解密。特殊报文处理单元用于对
报文中的设定关键字进行替换或者删除。报文池管理单元用于对系统内部报文进行管理,以便报文在系统内部流转。
[0053]
消息处理模块140用于计算消息路由、消息发送、消息清理、消息缓存、消息重发及消息异步中转。
[0054]
消息处理模块140包括消息路由计算单元、消息发送单元、消息清理单元及消息异步中转单元。
[0055]
其中,消息路由计算单元用于根据报文中的发送系统信息、接收系统信息及设定规则计算路由信息;其中,路由信息包括目标系统信息。消息发送单元用于将消息发送至确定的目标系统。消息清理单元用于将队列中超过设定生存时长的消息进行清理。消息异步中转单元用于当判断下游系统返回的应答消息为中转类型时,提取应答消息的设定关键字,并从设定缓存中获取中转配置规则;根据设定关键字和中转配置规则确定目标系统;将应答消息发送至目标系统。
[0056]
图2是本实施例中消息路由计算单元的原理图,如图2所示,首先获取消息的属性信息以及路由规则,基于属性信息和路由规则计算目标系统,如果计算成功,则将消息发送至目标系统,若计算失败,则进行路由失败反馈。
[0057]
本实施例中,消息发送单元基于netty协议将消息发送至目标系统。图3是本实施例中消息发送单元的原理图。如图3所示,接收到请求消息后,首先对接入点权限(上游系统权限)进行检查,若成功,则进行消息路由计算,并判断路由是否成功,若成功,则判断是否需要中转,若不需要中转,则对消息进行处理,并将处理后的消息进行发送。
[0058]
本实施例中,消息异步中转的场景如下:上游系统a发送请求消息给下游系统b,系统b将应答消息返回至异步处理系统,异步处理系统判断为中转类型消息,并从redis中读取中转配置规则,根据中转规则配置,获取系统b返回报文中的关键字;根据关键字的配置,计算中转的目标系统;将消息打包发送至目标系统。
[0059]
具体的,消息清理单元还用于将队列中超过设定生存时长的消息确定为死信消息,获取死信消息的清理规则,按照请求规则对死信消息进行清理。
[0060]
其中,清理规则包括重发和删除。当清理规则为重发时,判断死信消息的重发次数是否超过设定阈值,若超过,则将死信消息删除。图4是本发明实施例中消息清理单元的原理图。如图4所示,首先获取死信消息,然后确定死信消息的类型,然后根据类型确定清理属性,基于清理属性确定清理类型;若清理类型为重发,则获取目标系统,并对重发频次进行控制,将消息打包后重发至目标系统;若清理类型为删除,则将死信消息删除。
[0061]
流水信息处理模块150用于将流水信息写入流水队列,并异步从流水队列中读取流水信息,将读取的流水信息进行登记。
[0062]
具体的,流水信息处理模块还用于获取流水登记规则,根据流水登记规则确定流水队列,将流水信息写入流水队列。图5是本发明实施例中流水信息处理模块的原理图。如图5所示,获取流水信息及流水登记规则,根据流水登记规则计算流水队列,将流水信息写入计算出的流水队列中;异步从流水队列中读取流水信息,将读取的流水信息进行等级。
[0063]
日志处理模块160用于将日志信息写入日志队列,并异步从日志队列中读取日志信息,将读取的日志信息进行登记。
[0064]
可选的,该异步处理系统还包括:参数管理模块,用于对系统参数和业务参数进行
维护;并按照设定周期将数据库中的参数信息加载到redis缓存中,以供系统在使用时从缓存读取参数。
[0065]
可选的,该异步处理系统还包括:批量处理模块,用于按照业务属性确定处理时段;当时间达到所述处理时段时,批量处理对应的业务。
[0066]
其中,处理时段可以包括日间和夜间。日间批量处理:完成日间批量处理;夜间批量处理:完成夜间批量处理。
[0067]
可选的,该异步处理系统还包括:监控处理模块;所述监控处理模块包括:资源监控单元、服务监控单元、数据库监控单元、缓存监控单元及监控告警单元。
[0068]
本实施例中,还可以将监控信息通过界面进行展示。
[0069]
本发明实施例提供的系统间消息的异步处理系统,包括:请求处理模块、授权处理模块、报文处理模块、消息处理模块、流水信息处理模块以及日志处理模块;请求处理模块用于接收多个上游系统通过不同通道发送的请求消息,并将请求消息对应的下游系统发送来的应答消息写入对应的通道中,以将应答消息异步返回至对应的上游系统;授权处理模块用于判断上游系统是否注册,若注册,则允许上游系统接入;报文处理模块用于对报文进行格式转化、加密解密、特殊处理及对报文池进行管理;消息处理模块用于计算消息路由、消息发送、消息清理、消息缓存、消息重发及消息异步中转;流水信息处理模块用于将流水信息写入流水队列,并异步从流水队列中读取流水信息,将读取的流水信息进行登记;日志处理模块用于将日志信息写入日志队列,并异步从日志队列中读取日志信息,将读取的日志信息进行登记。本发明实施例提供的系统间消息的异步处理系统,可以提高系统间交互的响应速度以及处理性能。
[0070]
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜