CN115442203A - 消息事件处理方法、组件、计算机设备和存储介质 - Google Patents
消息事件处理方法、组件、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN115442203A CN115442203A CN202210997758.1A CN202210997758A CN115442203A CN 115442203 A CN115442203 A CN 115442203A CN 202210997758 A CN202210997758 A CN 202210997758A CN 115442203 A CN115442203 A CN 115442203A
- Authority
- CN
- China
- Prior art keywords
- message
- event
- message event
- configuration information
- rule configuration
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title abstract description 15
- 238000012545 processing Methods 0.000 claims abstract description 133
- 238000006243 chemical reaction Methods 0.000 claims abstract description 66
- 238000000034 method Methods 0.000 claims abstract description 52
- 238000011144 upstream manufacturing Methods 0.000 claims abstract description 31
- 230000008569 process Effects 0.000 claims abstract description 18
- 238000012795 verification Methods 0.000 claims description 37
- 238000004590 computer program Methods 0.000 claims description 28
- 230000004044 response Effects 0.000 claims description 15
- 210000001503 joint Anatomy 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 12
- 238000010200 validation analysis Methods 0.000 description 11
- 230000003993 interaction Effects 0.000 description 4
- 238000012216 screening Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/02—Standardisation; Integration
- H04L41/0226—Mapping or translating multiple network management protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/06—Message adaptation to terminal or network requirements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请涉及一种消息事件处理方法、组件、计算机设备和存储介质。所述方法包括:接收上游业务系统发送的消息;确定消息对应的目标消息事件;获取预先为目标消息事件配置的转换规则配置信息;根据转换规则配置信息对消息进行加工处理,得到符合下游业务系统的业务处理逻辑的新消息;将新消息回调至业务处理逻辑,以使得下游业务系统在执行业务处理逻辑的过程中根据新消息进行业务处理。采用本方法能够提高对接上游业务系统的消息事件的效率。
Description
技术领域
本申请涉及计算机软件技术领域,特别是涉及一种消息事件处理方法、组件、计算机设备和存储介质。
背景技术
随着计算机软件技术的发展,在后台程序开发中,有很多业务场景需要使用到消息中间件,例如,Rabbit MQ(Rabbit Message Queue,Rabbit消息队列)消息中间件等。使用消息中间件,可以实现服务的异步调用,提高系统响应速度,也使得上下游业务系统之间解耦。
然而,传统技术中,如果下游业务系统想要消费上游业务系统发送的消息,必须先在程序中编写与上游业务系统的某一消息事件对接的代码,针对不同的消息事件需要编写不同的解析消息体的代码,而且,代码或配置文件编写完成后,需要重启下游业务系统程序才能使相应解析功能生效,因此,当需要新接入消息事件时,对接上游业务系统消息事件的成本高、效率低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高对接上游消息事件效率的消息事件处理方法、组件、计算机设备和存储介质。
一种消息事件处理方法,该方法包括:
接收上游业务系统发送的消息;
确定消息对应的目标消息事件;
获取预先为目标消息事件配置的转换规则配置信息;
根据转换规则配置信息对消息进行加工处理,得到符合下游业务系统的业务处理逻辑的新消息;
将新消息回调至业务处理逻辑,以使得下游业务系统在执行业务处理逻辑的过程中根据新消息进行业务处理。
在其中一个实施例中,根据转换规则配置信息对消息进行加工处理之前,还包括:
获取目标消息事件的验证规则配置信息;
根据验证规则配置信息判断消息中的指定字段是否符合验证规则配置信息中设置的验证条件;
响应于指定字段符合验证条件,执行根据转换规则配置信息对消息进行加工处理的步骤。
在其中一个实施例中,根据转换规则配置信息对消息进行加工处理,得到符合下游业务系统的业务处理逻辑的新消息,包括:
根据转换规则配置信息从消息中确定目标字段;
从目标字段中提取目标参数;
获取下游业务系统的业务规范信息以及业务属性信息;
根据业务规范信息将目标参数转换为符合下游业务系统的业务规范的表达形式;
将转换后的目标参数以及业务属性信息进行重组和加工处理,生成新消息。
在其中一个实施例中,该方法还包括:
获取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息;
根据绑定规则配置信息将各消息事件对应的消息交换机与各自的指定队列进行绑定。
在其中一个实施例中,获取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息,包括:
接收下游业务系统上报的实时消息事件列表,根据实时消息事件列表从事件配置终端获取实时消息事件列表中各消息事件对应的绑定规则配置信息。
在其中一个实施例中,获取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息,包括:
基于定时任务周期性地从事件配置终端拉取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息。
在其中一个实施例中,该方法还包括:
从缓存中获取缓存消息事件列表;
从缓存消息事件列表中确定失效消息事件;
响应于失效消息事件的消息交换机未关联有效消息事件,将失效消息事件的消息交换机与对应的指定队列解绑。
在其中一个实施例中,该方法还包括:
响应于失效消息事件的消息交换机还关联有效消息事件,判断失效消息事件的消息交换机的类型;
响应于该类型为主题类型,将失效消息事件的消息交换机与其对应的指定队列解绑;
响应于该类型为广播类型,维持失效消息事件的消息交换机与其对应的指定队列的绑定关系。
一种消息事件处理组件,该组件应用于下游业务系统,该组件包括:
消息接收模块,用于接收上游业务系统发送的消息;
消息转换模块,用于确定消息对应的目标消息事件,获取预先为目标消息事件配置的转换规则配置信息,根据转换规则配置信息对消息进行加工处理,得到符合下游业务系统的业务处理逻辑的新消息;
回调业务模块,用于将新消息回调至业务处理逻辑,以使得下游业务系统在执行业务处理逻辑的过程中根据新消息进行业务处理。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的任一项消息事件处理方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的任一项消息事件处理方法的步骤。
上述消息事件处理方法、组件、计算机设备和存储介质,在接收到来自上游的消息后,首先确定该消息对应的消息事件,并根据该消息对应的消息事件所配置的转换规则对该消息进行加工处理,得到符合下游业务处理逻辑的新消息,再将新消息回调至下游业务处理逻辑中,通知下游业务系统根据新消息及其携带的参数执行后续的业务处理。采用本方法,在对接上游的消息事件时,不需要中断下游业务,不需要针对不同消息事件修改业务处理逻辑代码,也不需要修改硬代码后重启系统,根据转换规则配置信息对来自不同消息事件的消息进行对应的加工处理,通过回调处理后的新消息以完成后续业务处理,能够简单、快速、稳定地对接上游业务系统发布的不同的消息事件,减少了消息事件对接的工作量、提高了对接效率。
附图说明
图1为一个实施例中消息事件处理方法的应用环境图;
图2为一个实施例中消息事件处理方法的流程示意图;
图3为一个应用实例中消息事件处理方法的流程示意图;
图4为一个实施例中消息事件处理组件的结构框图;
图5为一个应用实例中消息事件处理组件的各模块之间的交互时序图;
图6为另一个应用实例中消息事件处理组件的各模块之间的交互时序图;
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅用以解释本申请,并不用于限定本申请。
在其中一个实施例中,本申请提供的消息事件处理方法,可以应用于如图1所示的应用环境中。其中,第一服务器102可以通过网络与第二服务器104进行通信。第一服务器102是指上游业务系统的服务器或服务器集群,第二服务器104是指下游业务系统的服务器或服务器集群,消息事件处理组件106可以加载于任意一台或多台第二服务器104上,也可以加载于独立于第二服务器106的其他服务器上不限,终端108是事件配置终端,可以通过网络与加载有消息事件处理组件106的第二服务器104进行通信。其中,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
具体地,第二服务器104通过加载的消息事件处理组件106接收上游业务系统的第一服务器102发送的消息,确定消息对应的目标消息事件,获取基于终端108预先为目标消息事件配置的转换规则配置信息,根据转换规则配置信息对消息进行加工处理,得到符合下游业务系统的业务处理逻辑的新消息,将新消息回调至业务处理逻辑,以使得下游业务系统在执行业务处理逻辑的过程中根据新消息进行业务处理。
在其中一个实施例中,如图2所示,提供了一种消息事件处理方法,以该方法应用于图1中的加载有消息事件处理组件的服务器为例进行说明,具体可以包括以下步骤:
步骤S202:接收上游业务系统发送的消息。
其中,上游业务系统是指消息生产系统,下游业务系统是指消息消费系统。具体地,上游业务系统产生消息并基于上游的服务器将消息发送至下游的事件管理组件的消息队列中,事件管理组件实时监测发送到该消息队列中的消息。
步骤S204:确定消息对应的目标消息事件。
其中,目标消息事件指的是该消息对应所属于的消息事件。下游业务系统可以订阅至少一个消息事件,用户可以在事件配置终端预先为想要订阅的各消息事件配置相关信息,可配置的信息包括但不限于消息事件编号、消息交换机、指定队列、消息交换机与指定队列之间的绑定关系、绑定规则、验证规则、转换规则等之中的至少一种。
具体地,事件管理组件在接收到消息后,获取该消息的元数据,并可以从缓存或数据库中获取预先配置的当前订阅的各消息事件的配置信息,将该消息的元数据以及各消息事件的配置信息进行对比,从多个消息事件中确定该消息所属哪个消息事件,并将确定出的消息事件作为目标消息事件。
步骤S206:获取预先为目标消息事件配置的转换规则配置信息。
其中,转换规则配置信息是指用于指示目标消息事件的消息转换为新消息的转换规则的信息。用户可以基于事件配置终端的配置界面为目标消息事件配置转换规则。
具体地,消息事件处理组件可以实时或周期性地从事件配置终端拉取已配置的转换规则配置信息并存入至缓存,在确定目标消息事件后,可以根据目标消息事件的编号在缓存中查询目标消息事件对应的转换规则配置信息。
示例性地,转换规则可以包括:关键字段筛选规则、参数格式转换规则、属性字段添加规则以及重组加工规则等之中的至少一种。其中,关键字段筛选规则:用于指示从消息体中筛选符合下游业务系统的业务处理逻辑的目标字段;参数格式转换规则:用于指示将目标字段中的参数转换为符合下游业务规范的形式;属性字段添加规则:用于指示将下游业务系统的特有属性作为新增字段;重组加工规则:用于指示将筛选出的目标字段以及新增字段进行重组和加工。
步骤S208:根据转换规则配置信息对消息进行加工处理,得到符合下游业务系统的业务处理逻辑的新消息。
具体地,事件管理组件可以根据转换规则配置信息对接收到的消息进行加工处理,生成符合其宿主下游业务系统的业务处理逻辑的新消息,对于来自不同消息事件的不同消息,根据不同的转换规则进行转换后,都能够生成符合下游业务系统的业务处理逻辑的新消息,因此,在需要订阅新消息事件或上游业务系统修改了消息事件时,不需要中断下游业务,也不需要在下游业务系统中修改消息解析代码,而且不需要修改硬代码后重启系统,仅需要针对不同的消息事件配置对应的转换规则即可。
在其中一个实施例中,根据转换规则配置信息对消息进行加工处理,得到符合下游服务器的业务处理逻辑的新消息,包括:根据转换规则配置信息从消息中确定目标字段;从目标字段中提取目标参数;获取下游业务系统的业务规范信息以及业务属性信息;根据业务规范信息将目标参数转换为符合下游业务系统的业务规范的表达形式;将转换后的目标参数以及业务属性信息进行重组和加工处理,生成新消息。
在本实施例中,业务规范信息是指下游业务系统定义的表达形式的规范要求,业务属性信息是指不同下游业务系统为区分管理而配置的特有属性。示例性地,业务规范信息可以包括单位规范、语言规范、表达规范、定义规范等信息。业务属性信息可以包括业务负责人、业务类型、业务描述、业务备注等信息。
本实施例,通过获取下游业务系统的业务规范信息和业务属性信息,从该消息的形式和内容两方面进行转换,进一步提高了生成的新消息与下游业务系统业务处理逻辑的匹配度。
步骤S210:将新消息回调至业务处理逻辑,以使得下游业务系统在执行业务处理逻辑的过程中根据新消息进行业务处理。
具体地,事件管理组件执行回调方法,将新消息以回调方式传至下游业务系统的业务处理逻辑中,下游业务系统在执行业务处理逻辑的过程中根据新消息及其相关参数继续执行后续的业务处理。
上述的消息事件处理方法,在接收到来自上游的消息后,首先确定该消息对应的消息事件,并根据该消息对应的消息事件所配置的转换规则对该消息进行加工处理,得到符合下游业务处理逻辑的新消息,再将新消息回调至下游业务处理逻辑中,通知下游业务系统根据新消息及其携带的参数执行后续的业务处理。采用本方法,在对接上游的消息事件时,不需要中断下游业务,不需要针对不同消息事件修改业务处理逻辑代码,也不需要修改硬代码后重启系统,根据转换规则配置信息对来自不同消息事件的消息进行对应的加工处理,通过回调处理后的新消息以完成后续业务处理,能够简单、快速、稳定地对接上游业务系统发布的不同的消息事件,减少了消息事件对接的工作量、提高了对接效率。
在其中一个实施例中,根据转换规则配置信息对消息进行加工处理之前,还包括:获取目标消息事件的验证规则配置信息;根据验证规则配置信息判断消息中的指定字段是否符合验证规则配置信息中设置的验证条件;响应于指定字段符合验证条件,执行根据转换规则配置信息对消息进行加工处理的步骤。
在本实施例中,用户还可以在事件配置终端基于可视化配置界面为目标消息事件配置验证规则,并生成验证规则配置信息。下游服务器可以根据验证规则配置信息对收到的消息进行验证,从而判断该消息是否符合处理条件,若该消息的指定字段符合验证规则配置信息中设置的验证条件,则可以继续进入根据转换规则配置信息对消息进行加工处理的步骤;进一步地,若该消息的指定字段不符合验证规则配置信息中设置的验证条件,则可以将该消息抛弃,也即是,终止对该消息的后续处理,下游业务系统将不会对该消息做相应响应。
示例性地,验证规则可以包括至少一个验证条件,不同的验证条件或验证条件的不同组合可以构成不同的验证规则。例如,验证规则可以被配置为同时满足以下验证条件:1、状态字段为成功;2、UID字段不为空;3、借款金额字段大于预设值。
本实施例,通过获取预先配置的验证规则配置信息,能够在下游业务系统执行业务处理逻辑之前为其筛选并去除不必要处理的消息,减轻下游业务系统的业务处理复杂度,减少工作量和资源消耗。
在其中一个实施例中,该方法还包括:获取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息;根据绑定规则配置信息将各消息事件对应的消息交换机与各自的指定队列进行绑定。其中,绑定规则配置信息包括各消息事件对应的消息交换机以及消息交换机与指定队列的绑定关系。
在本实施例中,用户还可以在事件配置终端为想要订阅的各消息事件配置绑定规则,其中,绑定规则配置信息包括:消息事件对应的消息交换机、指定队列、指定队列与消息交换机之间的绑定关系等。根据预先配置的绑定规则,消息事件处理组件能够自动、快速、批量地将消息队列与各消息事件对应的消息交换机进行绑定,不需要人工手动编写绑定配置文件,从而提高了对接上游消息事件的效率。
在其中一个实施例中,获取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息,包括:接收下游业务系统上报的实时消息事件列表,根据实时消息事件列表从事件配置终端获取实时消息事件列表中各消息事件对应的绑定规则配置信息。
在本实施例中,下游业务系统作为消息事件处理组件的宿主系统可以将其当前正在订阅的各消息事件的事件编号以列表形式主动告知消息事件处理组件,以使得消息事件处理组件根据各消息事件的事件编号从事件配置终端调取各消息事件对应的绑定规则配置信息。
在其中一个实施例中,获取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息,包括:基于定时任务周期性地从事件配置终端拉取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息。
在本实施例中,可以通过设置定时任务,每隔一定的时间间隔,主动从事件配置终端查询是否有新配置的消息事件,实时监测事件配置终端的用户动态,及时地获取实时消息事件列表,从而,提高绑定效率、实现动态绑定。
在其中一个实施例中,该方法还包括:从缓存中获取缓存消息事件列表;从缓存消息事件列表中确定失效消息事件;响应于失效消息事件的消息交换机未关联有效消息事件,将失效消息事件的消息交换机与其对应的指定队列解绑。
在本实施例中,每次获取到消息事件列表并执行动态绑定后可以将已完成动态绑定的消息事件列表存入缓存,在获取到实时消息事件列表后,可以从缓存中获取上一次存入的消息事件列表作为缓存消息事件列表,将实时消息事件列表中各消息事件的编号与缓存消息事件列表中各消息事件的编号进行比对,将存在于缓存消息事件列表但不存在于实时消息事件列表中的消息事件确定为失效消息事件。进一步地,可以判断失效消息事件对应的消息交换机是否还关联有其他有效消息事件,若不是,则可以直接将失效消息事件对应的消息交换机与其对应的指定队列解绑,从而,实现上游与下游的快速解绑,不需要停止下游的应用程序,也不需要进行程序重启则可以实现动态解绑。
在其中一个实施例中,该方法还包括:响应于失效消息事件的消息交换机还关联有效消息事件,判断失效消息事件的消息交换机的类型;响应于该类型为主题类型,将失效消息事件的消息交换机与其对应的指定队列解绑;响应于该类型为广播类型,维持失效消息事件对应的消息交换机与其对应的指定队列的绑定关系。
在本实施例中,若失效消息事件的消息交换机还关联了其他的消息事件,且关联的其他消息事件为有效消息事件,此时,可以通过判断消息交换机的类型以实现准确解绑。对于类型为主题(Topic)的消息交换机,可以直接解绑,该类型消息交换机与指定队列可以通过不同的routingkey(路由键)进行绑定,因此,解绑后不会影响其他消息事件的正常进行。对于类型为广播(Fanout)的消息交换机,相同的消息交换机会路由至相同的队列,解绑后可能会影响其他有效消息事件的正常进行,因此,可以不进行解绑操作。通过确定失效消息事件并判别消息交换机的类型以进行动态、及时解绑,能够减少队列闲置,提高队列利用率,而且,针对不同消息交换机能够进行不同的操作,提高了上下游对接的灵活性。
下面,结合一个应用实例,对本申请涉及的消息事件处理方法进行进一步详细说明,参考图3所示,图3示出了一个应用实例中消息事件处理方法的流程示意图,具体可以包括以下步骤:
S31:启动定时任务;
S32:判断下游业务系统是否提供实时消息事件列表;若是,进入执行步骤S34,若否,进入执行步骤S33;
S33:从事件管理终端拉取实时消息事件列表;
S34:根据实时消息事件列表获取各消息事件的配置信息;其中,配置信息可以包括:绑定规则配置信息、验证规则配置信息以及转换规则配置信息;
S35:将实时消息事件列表和配置信息存入缓存;
S36:根据绑定规则配置信息动态绑定消息交换机;
S37:接收上游业务系统发送的消息;
S38:根据消息的元数据从缓存中查询对应的消息事件及其验证规则配置信息和转换规则配置信息;
S39:执行消息验证和转换处理,生成新消息;
S310:通知下游业务系统根据新消息执行业务处理逻辑。
应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在其中一个实施例中,如图4所示,提供了一种消息事件处理组件,包括:消息接收模块402、消息转换模块404和回调业务模块406,其中:
消息接收模块402,用于接收上游业务系统发送的消息;
消息转换模块404,用于确定消息对应的目标消息事件;获取预先为目标消息事件配置的转换规则配置信息;根据转换规则配置信息对消息进行加工处理,得到符合下游业务系统的业务处理逻辑的新消息;
回调业务模块406,用于将新消息回调至业务处理逻辑,以使得下游业务系统在执行业务处理逻辑的过程中根据新消息进行业务处理。
在其中一个实施例中,消息转换模块404,还用于获取目标消息事件的验证规则配置信息;根据验证规则配置信息判断消息中的指定字段是否符合验证规则配置信息中设置的验证条件;响应于指定字段符合验证条件,执行根据转换规则配置信息对消息进行加工处理的步骤。
在其中一个实施例中,消息转换模块404根据转换规则配置信息从消息中确定目标字段;从目标字段中提取目标参数;获取下游业务系统的业务规范信息以及业务属性信息;根据业务规范信息将目标参数转换为符合下游业务系统的业务规范的表达形式;将转换后的目标参数以及业务属性信息进行重组和加工处理,生成新消息。
在其中一个实施例中,该组件还包括消息绑定模块,消息绑定模块可以用于获取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息;根据绑定规则配置信息将各消息事件对应的消息交换机与各自的指定队列进行绑定。
在其中一个实施例中,该组件还包括事件编排模块,事件编排模块可以用于接收下游业务系统上报的实时消息事件列表,根据实时消息事件列表从事件配置终端获取实时消息事件列表中各消息事件对应的绑定规则配置信息。
在其中一个实施例中,事件编排模块还用于基于定时任务周期性地从事件配置终端拉取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息。
在其中一个实施例中,事件编排模块还用于从缓存中获取缓存消息事件列表;从缓存消息事件列表中确定失效消息事件;消息绑定模块还用于响应于失效消息事件的消息交换机未关联有效消息事件,将失效消息事件的消息交换机与对应的指定队列解绑。
在其中一个实施例中,消息绑定模块还用于响应于失效消息事件的消息交换机还关联有效消息事件,判断失效消息事件的消息交换机的类型;响应于该类型为主题类型,将失效消息事件的消息交换机与其对应的指定队列解绑;响应于该类型为广播类型,维持失效消息事件对应的消息交换机与其对应的指定队列的绑定关系。
关于消息事件处理组件的具体限定可以参见上文中对于消息事件处理方法的限定,在此不再赘述。上述消息事件处理组件中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
下面,结合应用实例,对本申请涉及的消息事件处理方法进一步说明,参考图5和图6所示,图5示出了一个实施例中消息事件处理组件的各模块之间的交互时序图,其中,消息事件处理组件可以包括消息接收模块、消息转换模块、事件缓存模块、日志服务模块以及回调业务模块。
更为具体地,消息接收模块接收上游业务系统发送的消息,将消息元数据转递到消息转换模块,消息转换模块从事件缓存模块中查询该消息对应的消息事件的配置信息,根据配置信息对该消息进行验证和转换,生成新消息,并将处理日志上传到日志服务模块,然后,将新消息传到回调业务层,回调业务层执行回调方法,以使得下游业务系统根据新消息进行业务处理。
参考图6所示,图6示出了另一个实施例中消息事件处理组件的各模块之间的交互时序图。消息事件处理组件可以包括定时任务模块、事件编排模块、事件缓存模块、消息绑定模块、Rabbitmq模块以及事件配置模块。其中,定时任务模块、事件编排模块、事件缓存模块、消息绑定模块、Rabbitmq模块可以加载至下游业务系统的服务器,事件配置模块可以加载至终端。
更为具体地,定时任务模块每隔一定时间触发定时任务,事件编排模块响应触发从事件配置模块拉取下游业务系统的正在订阅的实时消息事件列表以及实时消息事件列表中各消息事件的配置信息,事件编排模块从事件缓存模块中查询缓存消息事件列表并与实时消息事件列表进行对比,并指示事件缓存模块进行列表更新,然后调用消息绑定模块。消息绑定模块执行判断逻辑,判断失效消息事件是否需要解绑,若是,则指示Rabbitmq模块进行解绑,若否,则可以指示Rabbitmq模块完成有效消息事件的绑定操作。
在其中一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种消息事件处理方法。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在其中一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:接收上游业务系统发送的消息;确定消息对应的目标消息事件;获取预先为目标消息事件配置的转换规则配置信息;根据转换规则配置信息对消息进行加工处理,得到符合下游业务系统的业务处理逻辑的新消息;将新消息回调至业务处理逻辑,以使得下游业务系统在执行业务处理逻辑的过程中根据新消息进行业务处理。
在其中一个实施例中,处理器执行计算机程序实现根据转换规则配置信息对消息进行加工处理之前,还实现以下步骤:获取目标消息事件的验证规则配置信息;根据验证规则配置信息判断消息中的指定字段是否符合验证规则配置信息中设置的验证条件;响应于指定字段符合验证条件,执行根据转换规则配置信息对消息进行加工处理的步骤。
在其中一个实施例中,处理器执行计算机程序实现根据转换规则配置信息对消息进行加工处理,得到符合下游业务系统的业务处理逻辑的新消息时,具体实现以下步骤:根据转换规则配置信息从消息中确定目标字段;从目标字段中提取目标参数;获取下游业务系统的业务规范信息以及业务属性信息;根据业务规范信息将目标参数转换为符合下游业务系统的业务规范的表达形式;将转换后的目标参数以及业务属性信息进行重组和加工处理,生成新消息。
在其中一个实施例中,处理器执行计算机程序还实现以下步骤:获取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息;根据绑定规则配置信息将各消息事件对应的消息交换机与各自的指定队列进行绑定。
在其中一个实施例中,处理器执行计算机程序实现获取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息时,具体实现以下步骤:接收下游业务系统上报的实时消息事件列表,根据实时消息事件列表从事件配置终端获取实时消息事件列表中各消息事件对应的绑定规则配置信息。
在其中一个实施例中,处理器执行计算机程序实现获取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息时,具体实现以下步骤:基于定时任务周期性地从事件配置终端拉取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息。
在其中一个实施例中,处理器执行计算机程序还实现以下步骤:从缓存中获取缓存消息事件列表;从缓存消息事件列表中确定失效消息事件;响应于失效消息事件的消息交换机未关联有效消息事件,将失效消息事件的消息交换机与对应的指定队列解绑。
在其中一个实施例中,处理器执行计算机程序还实现以下步骤:响应于失效消息事件的消息交换机还关联有效消息事件,判断失效消息事件的消息交换机的类型;响应于该类型为主题类型,将失效消息事件的消息交换机与其对应的指定队列解绑;响应于该类型为广播类型,维持失效消息事件对应的消息交换机与其对应的指定队列的绑定关系。
在其中一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:接收上游业务系统发送的消息;确定消息对应的目标消息事件;获取预先为目标消息事件配置的转换规则配置信息;根据转换规则配置信息对消息进行加工处理,得到符合下游业务系统的业务处理逻辑的新消息;将新消息回调至业务处理逻辑,以使得下游业务系统在执行业务处理逻辑的过程中根据新消息进行业务处理。
在其中一个实施例中,计算机程序被处理器执行实现根据转换规则配置信息对消息进行加工处理之前,还实现以下步骤:获取目标消息事件的验证规则配置信息;根据验证规则配置信息判断消息中的指定字段是否符合验证规则配置信息中设置的验证条件;响应于指定字段符合验证条件,执行根据转换规则配置信息对消息进行加工处理的步骤。
在其中一个实施例中,计算机程序被处理器执行实现根据转换规则配置信息对消息进行加工处理,得到符合下游业务系统的业务处理逻辑的新消息时,具体实现以下步骤:根据转换规则配置信息从消息中确定目标字段;从目标字段中提取目标参数;获取下游业务系统的业务规范信息以及业务属性信息;根据业务规范信息将目标参数转换为符合下游业务系统的业务规范的表达形式;将转换后的目标参数以及业务属性信息进行重组和加工处理,生成新消息。
在其中一个实施例中,计算机程序被处理器执行还实现以下步骤:获取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息;根据绑定规则配置信息将各消息事件对应的消息交换机与各自的指定队列进行绑定。
在其中一个实施例中,计算机程序被处理器执行实现获取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息时,具体实现以下步骤:接收下游业务系统上报的实时消息事件列表,根据实时消息事件列表从事件配置终端获取实时消息事件列表中各消息事件对应的绑定规则配置信息。
在其中一个实施例中,计算机程序被处理器执行实现获取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息时,具体实现以下步骤:基于定时任务周期性地从事件配置终端拉取实时消息事件列表以及实时消息事件列表中各消息事件对应的绑定规则配置信息。
在其中一个实施例中,计算机程序被处理器执行还实现以下步骤:从缓存中获取缓存消息事件列表;从缓存消息事件列表中确定失效消息事件;响应于失效消息事件的消息交换机未关联有效消息事件,将失效消息事件的消息交换机与对应的指定队列解绑。
在其中一个实施例中,计算机程序被处理器执行还实现以下步骤:响应于失效消息事件的消息交换机还关联有效消息事件,判断失效消息事件的消息交换机的类型;响应于该类型为主题类型,将失效消息事件的消息交换机与其对应的指定队列解绑;响应于该类型为广播类型,维持失效消息事件对应的消息交换机与其对应的指定队列的绑定关系。
本领域普通技术人员可以理解实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符一般表示前后关联对象是一种“或”的关系。
需要说明的是,在本发明中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序;术语“S202”、“S204”等用于区别步骤,而不必理解为按照特定的顺序或先后次序执行方法步骤;下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。本发明中的多个包括两个及两个以上,另有说明的除外。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种消息事件处理方法,所述方法包括:
接收上游业务系统发送的消息;
确定所述消息对应的目标消息事件;
获取预先为所述目标消息事件配置的转换规则配置信息;
根据所述转换规则配置信息对所述消息进行加工处理,得到符合下游业务系统的业务处理逻辑的新消息;
将所述新消息回调至所述业务处理逻辑,以使得所述下游业务系统在执行所述业务处理逻辑的过程中根据所述新消息进行业务处理。
2.根据权利要求1所述的方法,其特征在于,所述根据所述转换规则配置信息对所述消息进行加工处理之前,还包括:
获取所述目标消息事件的验证规则配置信息;
根据所述验证规则配置信息判断所述消息中的指定字段是否符合所述验证规则配置信息中设置的验证条件;
响应于所述指定字段符合所述验证条件,执行所述根据所述转换规则配置信息对所述消息进行加工处理的步骤。
3.根据权利要求1所述的方法,其特征在于,所述根据所述转换规则配置信息对所述消息进行加工处理,得到符合下游业务系统的业务处理逻辑的新消息,包括:
根据所述转换规则配置信息从所述消息中确定目标字段;
从所述目标字段中提取目标参数;
获取所述下游业务系统的业务规范信息以及业务属性信息;
根据所述业务规范信息将所述目标参数转换为符合所述下游业务系统的业务规范的表达形式;
将转换后的目标参数以及所述业务属性信息进行重组和加工处理,生成所述新消息。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取实时消息事件列表以及所述实时消息事件列表中各消息事件对应的绑定规则配置信息;
根据所述绑定规则配置信息将各所述消息事件对应的消息交换机与各自的指定队列进行绑定。
5.根据权利要求4所述的方法,其特征在于,所述获取实时消息事件列表以及所述实时消息事件列表中各消息事件对应的绑定规则配置信息,包括:
接收所述下游业务系统上报的实时消息事件列表,根据所述实时消息事件列表从事件配置终端获取所述实时消息事件列表中各消息事件对应的绑定规则配置信息;或
基于定时任务周期性地从事件配置终端拉取实时消息事件列表以及所述实时消息事件列表中各消息事件对应的绑定规则配置信息。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
从缓存中获取缓存消息事件列表;
从所述缓存消息事件列表中确定失效消息事件;
响应于所述失效消息事件的消息交换机未关联有效消息事件,将所述失效消息事件的消息交换机与对应的指定队列解绑。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
响应于所述失效消息事件的消息交换机还关联有效消息事件,判断所述失效消息事件的消息交换机的类型;
响应于所述类型为主题类型,将所述失效消息事件的消息交换机与其对应的指定队列解绑;
响应于所述类型为广播类型,维持所述失效消息事件的消息交换机与其对应的指定队列的绑定关系。
8.一种消息事件处理组件,其特征在于,所述组件应用于下游业务系统,所述组件包括:
消息接收模块,用于接收上游业务系统发送的消息;
消息转换模块,用于确定所述消息对应的目标消息事件,获取预先为所述目标消息事件配置的转换规则配置信息,根据所述转换规则配置信息对所述消息进行加工处理,得到符合下游业务系统的业务处理逻辑的新消息;
回调业务模块,用于将所述新消息回调至所述业务处理逻辑,以使得所述下游业务系统在执行所述业务处理逻辑的过程中根据所述新消息进行业务处理。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210997758.1A CN115442203A (zh) | 2022-08-19 | 2022-08-19 | 消息事件处理方法、组件、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210997758.1A CN115442203A (zh) | 2022-08-19 | 2022-08-19 | 消息事件处理方法、组件、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115442203A true CN115442203A (zh) | 2022-12-06 |
Family
ID=84241905
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210997758.1A Pending CN115442203A (zh) | 2022-08-19 | 2022-08-19 | 消息事件处理方法、组件、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115442203A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9436532B1 (en) * | 2011-12-20 | 2016-09-06 | Emc Corporation | Method and system for implementing independent message queues by specific applications |
WO2019174129A1 (zh) * | 2018-03-13 | 2019-09-19 | 平安科技(深圳)有限公司 | 事件提醒方法、装置、计算机设备和存储介质 |
CN110943971A (zh) * | 2019-10-17 | 2020-03-31 | 亚信科技(中国)有限公司 | 一种事件业务处理方法及系统 |
CN113138861A (zh) * | 2020-01-18 | 2021-07-20 | 佛山市云米电器科技有限公司 | 基于设备服务系统的消息处理方法、系统及存储介质 |
CN113687958A (zh) * | 2021-07-29 | 2021-11-23 | 上海浦东发展银行股份有限公司 | 数据处理方法、系统、计算机设备和存储介质 |
CN113806110A (zh) * | 2021-09-18 | 2021-12-17 | 平安银行股份有限公司 | 基于事件驱动的消息处理方法、装置、设备及存储介质 |
-
2022
- 2022-08-19 CN CN202210997758.1A patent/CN115442203A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9436532B1 (en) * | 2011-12-20 | 2016-09-06 | Emc Corporation | Method and system for implementing independent message queues by specific applications |
WO2019174129A1 (zh) * | 2018-03-13 | 2019-09-19 | 平安科技(深圳)有限公司 | 事件提醒方法、装置、计算机设备和存储介质 |
CN110943971A (zh) * | 2019-10-17 | 2020-03-31 | 亚信科技(中国)有限公司 | 一种事件业务处理方法及系统 |
CN113138861A (zh) * | 2020-01-18 | 2021-07-20 | 佛山市云米电器科技有限公司 | 基于设备服务系统的消息处理方法、系统及存储介质 |
CN113687958A (zh) * | 2021-07-29 | 2021-11-23 | 上海浦东发展银行股份有限公司 | 数据处理方法、系统、计算机设备和存储介质 |
CN113806110A (zh) * | 2021-09-18 | 2021-12-17 | 平安银行股份有限公司 | 基于事件驱动的消息处理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110489447B (zh) | 数据查询方法、装置、计算机设备和存储介质 | |
CN108449405B (zh) | 事件提醒方法、装置、计算机设备和存储介质 | |
CN108595207B (zh) | 一种灰度发布方法、规则引擎、系统、终端和存储介质 | |
CN109743358B (zh) | 异步消息接口熔断控制方法、装置、计算机设备及存储介质 | |
CN108924250B (zh) | 基于区块链的业务请求处理方法、装置和计算机设备 | |
CN109992354B (zh) | 容器处理方法、装置、主体服务器、系统和存储介质 | |
CN109040227B (zh) | 基于区块链的业务请求响应方法、装置和计算机设备 | |
CN110943934A (zh) | 服务请求处理方法、系统、终端及可读存储介质 | |
CN109787882A (zh) | 消息推送方法、装置、计算机设备及存储介质 | |
CN112235396B (zh) | 内容处理链路调整方法、装置、计算机设备和存储介质 | |
CN108965450B (zh) | 业务请求响应方法、装置、计算机设备和存储介质 | |
CN111400246A (zh) | 异步导入文件方法、装置、计算机设备和存储介质 | |
CN112433863A (zh) | 微服务调用方法、装置、终端设备以及存储介质 | |
US20080103796A1 (en) | Business process operation method and system | |
CN111190727A (zh) | 内存的异步析构方法、装置、计算机设备及存储介质 | |
CN111371848A (zh) | 一种请求处理方法、装置、设备及存储介质 | |
CN114153635A (zh) | 消息处理方法、装置、存储介质及计算机设备 | |
CN111813529B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN111835797A (zh) | 一种数据处理方法、装置及设备 | |
CN111629031B (zh) | 集群存储的方法、系统、计算机设备及存储介质 | |
CN115442203A (zh) | 消息事件处理方法、组件、计算机设备和存储介质 | |
CN109327499B (zh) | 业务接口的管理方法及装置、存储介质、终端 | |
CN114003384B (zh) | 任务管理的方法、装置和设备 | |
CN114020368A (zh) | 基于状态机的信息处理方法、装置和存储介质 | |
CN111459653B (zh) | 集群调度方法、装置和系统以及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |