CN112559211A - 消息数据的更新方法、装置、计算机设备及存储介质 - Google Patents
消息数据的更新方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN112559211A CN112559211A CN202011492374.1A CN202011492374A CN112559211A CN 112559211 A CN112559211 A CN 112559211A CN 202011492374 A CN202011492374 A CN 202011492374A CN 112559211 A CN112559211 A CN 112559211A
- Authority
- CN
- China
- Prior art keywords
- message
- response
- component
- event
- data
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请涉及数据处理领域,特别是涉及到一种消息数据的更新方法、装置、计算机设备及存储介质,其中方法包括:通过消息组件接收业务组件发起的数据处理请求,确定所述数据处理请求的请求类型,并构造所述请求类型的消息队列;基于所述消息组件构造所述数据处理请求的消息事件,并将所述消息事件发送至所述请求类型对应的消息队列中;控制响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,并将响应所述消息事件后的响应结果返回至所述消息队列;当业务组件监听到所述消息队列中的响应结果后,获取所述响应结果并将所述响应结果反馈至前端业务层。利用解耦的组件实现分布式地对大量的消息数据进行处理,提高消息数据更新的效率。
Description
技术领域
本申请涉及到数据处理领域,特别是涉及到一种消息数据的更新方法、装置、计算机设备及存储介质。
背景技术
随着应用版本的不断更替、迭代,业务所使用的数据不断发展,在面对日益增长数据量和访问量,后端服务所承载的数据量也越来越大。特别是当数据需要持久化写入服务器的外置存储器中的时候,单机的软硬件瓶颈都是对束缚后端服务访问量极限的。
目前业界对于后端写入数据库压力的应对方法主要是读写分离、分库、分表;以上方法虽然可以缓解数据库压力,但是需要在系统中引入中间件,引入不稳定性,而且中间件一旦出错数据不容易恢复。
发明内容
本申请的主要目的为提供一种消息数据的更新方法、装置、计算机设备及存储介质,旨在解决目前对于数据量越来越大的消息数据的处理出现硬件瓶颈而导致处理效率低、数据库压力大的问题。
为了实现上述发明目的,本申请提出一种消息数据的更新方法,包括如下步骤:
通过消息组件接收业务组件发起的数据处理请求,确定所述数据处理请求的请求类型,并构造所述请求类型的消息队列;
基于所述消息组件构造所述数据处理请求的消息事件,并将所述消息事件发送至所述请求类型对应的消息队列中;
控制响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,并将响应所述消息事件后的响应结果返回至所述消息队列;
当业务组件监听到所述消息队列中的响应结果后,获取所述响应结果并将所述响应结果反馈至前端业务层。
进一步地,所述基于所述消息组件构造所述数据处理请求的消息事件,并将所述消息事件发送至所述请求类型对应的消息队列中之后,还包括;
根据预设的缓存规则依次获取所述消息队列中的目标消息事件;
将所述目标消息事件持久化存储至外置的存储器。
进一步地,所述控制响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,并将响应所述消息事件后的响应结果返回至所述消息队列,包括:
获取若干个响应组件的负载状态;
选取负载状态低于预设值的响应组件作为目标响应组件;
控制所述目标响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,并将响应所述消息事件后的响应结果返回至所述消息队列。
进一步地,所述基于所述消息组件构造所述数据处理请求的消息事件,并将所述消息事件发送至所述请求类型对应的消息队列中,还包括:
基于所述消息组件构造所述数据处理请求的消息事件,为所述消息事件添加对应的紧急等级标识,并将添加所述紧急等级标识的消息事件发送至所述请求类型对应的消息队列中;
所述控制响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,包括:
控制响应组件从所述消息队列中按照所述紧急等级标识获取所述消息事件,并对所述消息事件进行响应。
进一步地,所述当业务组件监听到所述消息队列中的响应结果后,获取所述响应结果并将所述响应结果反馈至前端业务层之后,还包括:
判断所述响应结果是否正确,得到判断结果;
根据所述判断结果统计响应组件响应所述消息事件的正确率。
进一步地,所述根据所述判断结果统计响应组件响应所述消息事件的正确率之后,还包括:
获取不同响应组件对不同类型的消息事件的响应结果的正确率;
将正确率满足预设要求的响应组件配置为对应类型的消息事件的优先响应组件。
进一步地,所述当业务组件监听到所述消息队列中的响应结果后,获取所述响应结果并将所述响应结果反馈至前端业务层之后,还包括:
计算所述响应结果的耗时数据;
根据所述耗时数据统计响应组件响应所述消息事件的性能数据;
将性能数据满足预设要求的响应组件配置为对应消息事件的优先响应组件。
本申请还提供一种消息数据的更新装置,包括:
消息接收模块:用于通过消息组件接收业务组件发起的数据处理请求,确定所述数据处理请求的请求类型,并构造所述请求类型的消息队列;
事件构建模块:用于基于所述消息组件构造所述数据处理请求的消息事件,并将所述消息事件发送至所述请求类型对应的消息队列中;
执行响应模块:用于控制响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,并将响应所述消息事件后的响应结果返回至所述消息队列;
结果反馈模块:用于当业务组件监听到所述消息队列中的响应结果后,获取所述响应结果并将所述响应结果反馈至前端业务层。
本申请还提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述消息数据的更新方法的步骤。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述消息数据的更新方法的步骤。
本申请提供了一种利用多个独立的组件实现分布式的消息数据更新的方法,通过解耦应用的前端业务层与消息处理系统,并且消息处理系统的多个组件也进行解耦,通过业务组件获取前端业务层的操作,然后通过消息组件接收业务组件发起的数据处理请求,再确定所述数据处理请求的请求类型,然后创建不同请求类型对应的消息队列,同时将为数据处理请求构造为消息事件以及消息队列,将不同类型的消息事件存放至不同的消息队列中,方便对不同消息事件进行等级划分,不同响应组件能够根据预设的规则对消息队列中的不同消息事件进行响应,尤其可以对紧急等级高的消息事件进行优先响应,从而得到响应结果后反馈至消息队列,再由业务组件从消息队列中获取响应结果后反馈至前端业务层,能够最大限度地满足对紧急事件的处理,同时不同组件间的操作不再耦合,不同组件间的工作执行不需要等待其他组件响应后才能执行,可以快速地对大量的消息数据进行处理、更新,提高消息数据处理、更新的效率,同时各个组件可以灵活地开启或停止,提高资源的利用率。
附图说明
图1为本申请消息数据的更新方法的一实施例流程示意图;
图2为本申请消息处理系统的一实施例示意图;
图3为本申请消息数据的更新装置的一实施例结构示意图;
图4为本申请计算机设备的一实施例结构示意框图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参照图1,本申请实施例提供一种消息数据的更新方法,至少包括步骤S10-S40,对于所述消息数据的更新方法的各个步骤的详细阐述如下。
S10、通过消息组件接收业务组件发起的数据处理请求,确定所述数据处理请求的请求类型,并构造所述请求类型的消息队列。
本申请实施例应用于应用的消息处理系统中,所述消息系统由若干个相互独立的功能组件构成,消息系统包含业务组件、消息组件及响应组件。当应用的前端业务层进行预设操作时,搜索操作包括在应用执行搜索操作,提交订单操作,支付操作,删除操作等操作,前端业务层的操作传递至业务组件,由业务组件发起相对应的数据处理请求,例如当用户在应用的前端业务层执行搜索商品操作时,前端业务层将搜索商品操作传递给业务组件,由于搜索商品需要对商品信息进行查询,因此由业务组件发起相对应的商品查询请求。消息处理系统中通过消息组件接收所述业务组件发起的数据处理请求,该些数据处理请求包含对数据库进行增删改读的操作,当消息组件接收到数据处理请求后,确定所述数据处理请求的请求类型,在一种实施方式中,根据对数据库的操作行为对数据处理请求进行分类,确定所述数据处理请求是读数据请求或写数据请求或改数据请求或删数据请求;在另一种实施例中,根据数据处理请求的来源对数据处理请求进行分类;然后根据不同的请求类型构建不同的消息队列,以对数据处理请求进行分类。
S20、基于所述消息组件构造所述数据处理请求的消息事件,并将所述消息事件发送至所述请求类型对应的消息队列中。
本实施例中,消息组件接收到所述数据处理请求后,构造所述数据处理请求对应的消息事件,将该数据处理请求要执行的操作构造成一个消息事件,当所述数据处理请求为读数据请求时,构造的消息事件为从数据库中读取参数X的值,当所述数据处理请求为写数据请求时,构造的另一个消息事件为对所述参数X的值增加Y值后写入数据库,然后将所述消息事件发送至所述请求类型对应的消息队列中,读数据请求对应为读消息队列,写数据请求对应为写消息队列,在一个消息队列中能够存入多个相同请求类型的消息事件,以便对不同的消息事件的分发。本实施例通过对数据处理请求进行不同的分类,将不同的数据处理请求发送给不同的消息队列中,不仅可以根据对数据的不同操作将数据处理请求分类为读请求或写请求,还可以根据不同的应用场景对数据处理请求进行分类,将支付模块的请求对应的消息事件分类到同一个消息队列中,将订单模块的请求对应的消息事件分类到另一个消息队列中。从而实现消息的不同归类,可以将消息事件进行不同紧急等级的划分,方便对不同消息进行分布式地处理。
S30、控制响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,并将响应所述消息事件后的响应结果返回至所述消息队列。
本实施例中,将消息事件发送至消息队列中后,控制响应组件按照设定的处理时间从所述消息队列中提取对应的消息事件,一种实施方式是一个响应组件每一次从所述消息队列中提取一个消息事件,然后响应组件解析所述消息事件,确定所述消息事件是对什么数据进行什么操作,从而对所述消息事件进行响应,得到响应结果,再将响应结果反馈至所述消息队列,而所述消息队列中所述消息事件的状态随即被修改,将所述消息事件从待响应修改至已响应,通过修改消息事件的状态追踪消息事件的处理进度,方便对消息队列中的消息事件进行分类及统计。进一步的,还可以针对消息事件的不同紧急等级,控制响应组件按照紧急等级的高低优先处理紧急等级高的消息队列中的消息事件。
S40、当业务组件监听到所述消息队列中的响应结果后,获取所述响应结果并将所述响应结果反馈至前端业务层。
本实施例中,当消息处理系统中的响应组件响应所述消息事件后,反馈响应结果至消息队列,消息处理系统中的业务组件持续监听所述消息队列中消息事件的状态,当所述消息事件的状态变更为已响应状态后,从所述消息队列中获取对应消息事件的响应结果,然后将所述响应结果反馈至前端业务层,前端业务层实现对消息数据的更新,前端业务层便能获得所执行的操作对应的结果。
本实施例提供了一种利用多个独立的组件实现分布式的消息数据更新的方法,通过解耦应用的前端业务层与消息处理系统,并且消息处理系统的多个组件也进行解耦,通过业务组件获取前端业务层的操作,然后通过消息组件接收业务组件发起的数据处理请求,再确定所述数据处理请求的请求类型,然后创建不同请求类型对应的消息队列,同时将为数据处理请求构造为消息事件以及消息队列,将不同类型的消息事件存放至不同的消息队列中,方便对不同消息事件进行等级划分,不同响应组件能够根据预设的规则对消息队列中的不同消息事件进行响应,尤其可以对紧急等级高的消息事件进行优先响应,从而得到响应结果后反馈至消息队列,再由业务组件从消息队列中获取响应结果后反馈至前端业务层,能够最大限度地满足对紧急事件的处理,同时不同组件间的操作不再耦合,不同组件间的工作执行不需要等待其他组件响应后才能执行,可以快速地对大量的消息数据进行处理、更新,提高消息数据处理、更新的效率,同时各个组件可以灵活地开启或停止,提高资源的利用率。
如图2所示是本发明的消息处理系统的一工作流程图,消息系统是在应用中对消息数据进行处理,应用还包含有前端业务层,前端业务层执行操作后,业务组件获取前端业务层的操作,产生数据处理请求,分布式的消息组件(包括消息组件1、2)接收业务组件发起的数据处理请求,一个数据处理请求只需有一个消息组件进行接收处理,然后确定所述数据处理请求的请求类型,为所述数据处理请求构造消息事件以及消息队列,将消息事件存放至消息队列中,不同响应组件能够根据预设的规则从所述消息队列中的获取不同消息事件并进行响应,例如响应组件1、2只处理消息队列1中的消息事件,响应组件3只处理消息队列2中的消息事件,再将响应得到的响应结果后反馈至消息队列,再由业务组件从消息队列中获取已完成相应的消息事件的响应结果后反馈至前端业务层,前端业务层根据所述响应结果完成对消息数据的更新,从而获得所执行的操作对应的结果。
在一个实施例中,所述基于所述消息组件构造所述数据处理请求的消息事件,并将所述消息事件发送至所述请求类型对应的消息队列中之后,还包括;
根据预设的缓存规则依次获取所述消息队列中的目标消息事件;
将所述目标消息事件持久化存储至外置的存储器。
本实施例中,为了避免系统突然崩溃而造成的数据丢失,消息处理系统配置有容灾措施,具体的,在消息组件中制定消息缓存策略,在将所述消息事件发送至所述请求类型对应的消息队列后,根据预设的缓存规则依次获取所述消息队列中的目标消息事件,然后将所述目标消息事件持久化存储至存储器,在一种实施方式中,依据消息事件加入至消息队列的时间先后对消息事件进行排序,在预设的时间间隔依次选定目标消息事件,然后将所述目标消息事件存储至消息处理系统外置的存储器中,完成对消息事件的持久化,避免消息处理系统崩溃而导致消息数据的丢失,提高系统的安全性。在另一种实施方式中,依据消息事件的安全等级依次将消息事件持久化存储至外置的存储器。进一步的,所述存储器与所述消息事件的分类相对应,根据不同消息事件的分类,将消息事件持久化地存储至外置的对应分类的存储器中,在后续进行消息事件的查找、检索时,可以快速地从对应的存储器中查找到所需的消息事件,提高数据的检索效率。
在一个实施例中,所述控制响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,并将响应所述消息事件后的响应结果返回至所述消息队列,包括:
获取若干个响应组件的负载状态;
选取负载状态低于预设值的响应组件作为目标响应组件;
控制所述目标响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,并将响应所述消息事件后的响应结果返回至所述消息队列。
本实施例中,将响应组件分布式地部署在不同的节点,不同的节点所拥有的处理资源不同,不同的节点在当前时间所占用的资源亦不同,当需要响应组件对消息事件进行响应时,通过获取若干个不同节点的响应组件的负载状态,然后选取负载状态低于预设值的响应组件作为目标响应组件,再控制所述目标响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,并将响应所述消息事件后的响应结果返回至所述消息队列,优先使用当前负载较低的响应组件对消息事件进行响应,避免同一节点的响应组件同时处理过多的消息事件导致负载过大、响应不及时的现象,从而最大并发地处理消息事件,提高消息事件的处理效率。
在一个实施例中,所述基于所述消息组件构造所述数据处理请求的消息事件,并将所述消息事件发送至所述请求类型对应的消息队列中,还包括:
基于所述消息组件构造所述数据处理请求的消息事件,为所述消息事件添加对应的紧急等级标识,并将添加所述紧急等级标识的消息事件发送至所述请求类型对应的消息队列中;
所述控制响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,包括:
控制响应组件从所述消息队列中按照所述紧急等级标识获取所述消息事件,并对所述消息事件进行响应。
本实施例中,消息组件接收到所述数据处理请求后,构造所述数据处理请求对应的消息事件,同时根据所述数据处理请求的信息为实施消息事件添加对应的紧急等级标识,即在本实施例中,不同的数据处理请求具有不同的紧急等级,紧急等级越高的数据处理请求表示该数据处理请求需要优先得到处理,在为所述消息事件添加对应的紧急等级标识后,将添加所述紧急等级标识的消息事件发送至所述请求类型对应的消息队列中,至此消息队列中的不同消息事件具有不同的紧急等级,后续响应组件对消息事件进行处理时,控制响应组件从所述消息队列中按照所述紧急等级标识获取所述消息事件,优先控制响应组件获取紧急等级高的消息事件,并对所述消息事件进行响应,保证紧急等级高的数据处理请求能够得到优先处理,保证系统的安全性。
在一个实施例中,所述当业务组件监听到所述消息队列中的响应结果后,获取所述响应结果并将所述响应结果反馈至前端业务层之后,还包括:
判断所述响应结果是否正确,得到判断结果;
根据所述判断结果统计响应组件响应所述消息事件的正确率;
将正确率满足预设要求的响应组件配置为对应消息事件的优先响应组件。
本实施例中,消息处理系统中的每一个响应组件的逻辑配置相同,但无法保证不同的响应组件的部署环境均相同,从而可能导致响应组件处理消息事件产生的响应结果出错,在获取所述响应结果并将所述响应结果反馈至前端业务层之后,前端业务层实现对消息数据的更新,在每一次得到响应结果后判断所述响应结果是否正确,可以依据响应结果与预期结果的误差值判断响应结果是否正确,若误差值在标准误差值的范围内,则可以判定所述响应结果正确,当多个不同的响应组件对消息事件得到判断结果,再对判断结果进行统计,便可以统计出响应组件处理所述消息事件的正确率,方便对响应结果出现错误导致正确率过低的响应组件进行维护,从而提高响应组件的维护效率。
在一个实施例中,所述根据所述判断结果统计响应组件响应所述消息事件的正确率之后,还包括:
获取不同响应组件对不同类型的消息事件的响应结果的正确率;
将正确率满足预设要求的响应组件配置为对应类型的消息事件的优先响应组件。
本实施例中,在上述实施例根据所述判断结果统计响应组件响应所述消息事件的正确率的基础上,便可以统计出不同的响应组件对于不同种类型的消息事件的响应结果的正确率,即获取不同响应组件对不同类型的消息事件的响应结果的正确率,然后将正确率满足预设要求的响应组件作为对应类型的消息事件的优先响应组件,在后续出现该类型的消息事件时,控制所述优先响应组件对该类型的消息事件进行处理。在一种实施方式中,A、B、C三个响应组件均处理X类操作请求的消息事件,统计A、B、C三个响应组件得到的判断结果中,A响应组件处理X类操作请求的消息事件的正确率较响应组件B、C高,将A响应组件配置为X类操作请求的消息事件的优先响应组件,在后续出现X类操作请求的消息事件时,优先控制A响应组件对所述消息事件进行响应,从而提高响应所述消息事件的正确率。
在一个实施例中,所述当业务组件监听到所述消息队列中的响应结果后,获取所述响应结果并将所述响应结果反馈至前端业务层之后,还包括:
计算所述响应结果的耗时数据;
根据所述耗时数据统计响应组件响应所述消息事件的性能数据;
将性能数据满足预设要求的响应组件配置为消息事件的优先响应组件。
本实施例中,消息处理系统中的每一个响应组件的逻辑配置相同,但无法保证不同的响应组件的部署环境均相同,从而可能导致响应组件处理消息事件的耗时数据不同,在获取所述响应结果并将所述响应结果反馈至前端业务层之后,前端业务层实现对消息数据的更新,计算所述响应结果的耗时数据,根据所述耗时数据统计响应组件响应所述消息事件的性能数据,根据多次的耗时数据统计响应组件的性能数据,将性能数据满足预设要求的响应组件配置为消息事件的优先响应组件,在后续出现消息事件时,控制所述优先响应组件对该消息事件进行处理,优先以性能数据最高的响应组件对消息事件进行响应,提高消息事件处理的效率。
参照图3,本申请还提供一种消息数据的更新装置,包括:
消息接收模块10:用于通过消息组件接收业务组件发起的数据处理请求,确定所述数据处理请求的请求类型,并构造所述请求类型的消息队列;
事件构建模块20:用于基于所述消息组件构造所述数据处理请求的消息事件,并将所述消息事件发送至所述请求类型对应的消息队列中;
执行响应模块30:用于控制响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,并将响应所述消息事件后的响应结果返回至所述消息队列;
结果反馈模块40:用于当业务组件监听到所述消息队列中的响应结果后,获取所述响应结果并将所述响应结果反馈至前端业务层。
如上所述,可以理解地,本申请中提出的所述消息数据的更新装置的各组成部分可以实现如上所述消息数据的更新方法任一项的步骤功能。
在一个实施例中,所述事件构建模块20还包括执行:
根据预设的缓存规则依次获取所述消息队列中的目标消息事件;
将所述目标消息事件持久化存储至外置的存储器。
在一个实施例中,所述执行响应模块30还包括执行:
获取若干个响应组件的负载状态;
选取负载状态低于预设值的响应组件作为目标响应组件;
控制所述目标响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,并将响应所述消息事件后的响应结果返回至所述消息队列。
在一个实施例中,所述事件构建模块20还包括执行:
基于所述消息组件构造所述数据处理请求的消息事件,为所述消息事件添加对应的紧急等级标识,并将添加所述紧急等级标识的消息事件发送至所述请求类型对应的消息队列中;
所述执行响应模块30还包括执行:
控制响应组件从所述消息队列中按照所述紧急等级标识获取所述消息事件,并对所述消息事件进行响应。
在一个实施例中,所述装置还包括:
正确率统计模块:用于判断所述响应结果是否正确,得到判断结果;根据所述判断结果统计响应组件响应所述消息事件的正确率。
在一个实施例中,所述正确率统计模块还包括执行:
获取不同响应组件对不同类型的消息事件的响应结果的正确率;
将正确率满足预设要求的响应组件配置为对应类型的消息事件的优先响应组件。
在一个实施例中,所述装置还包括:
性能数据统计模块,用于计算所述响应结果的耗时数据;根据所述耗时数据统计响应组件响应所述消息事件的性能数据;将性能数据满足预设要求的响应组件配置为对应消息事件的优先响应组件。
参照图4,本申请实施例中还提供一种计算机设备,该计算机设备可以是移动终端,其内部结构可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和显示装置及输入装置。其中,该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机设备的显示装置用于显示交互界面。该计算机设备的输入装置用于接收用户的输入。该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质。该非易失性存储介质存储有操作系统、计算机程序和数据库。该计算机程序被处理器执行时实现一种消息数据的更新方法。
上述处理器执行上述的消息数据的更新方法包括:通过消息组件接收业务组件发起的数据处理请求,确定所述数据处理请求的请求类型,并构造所述请求类型的消息队列;基于所述消息组件构造所述数据处理请求的消息事件,并将所述消息事件发送至所述请求类型对应的消息队列中;控制响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,并将响应所述消息事件后的响应结果返回至所述消息队列;当业务组件监听到所述消息队列中的响应结果后,获取所述响应结果并将所述响应结果反馈至前端业务层。所述计算机设备能够提供了一种利用多个独立的组件实现分布式的消息数据更新的方法,通过解耦应用的前端业务层与消息处理系统,并且消息处理系统的多个组件也进行解耦,通过业务组件获取前端业务层的操作,然后通过消息组件接收业务组件发起的数据处理请求,再确定所述数据处理请求的请求类型,然后创建不同请求类型对应的消息队列,同时将为数据处理请求构造为消息事件以及消息队列,将不同类型的消息事件存放至不同的消息队列中,方便对不同消息事件进行等级划分,不同响应组件能够根据预设的规则对消息队列中的不同消息事件进行响应,尤其可以对紧急等级高的消息事件进行优先响应,从而得到响应结果后反馈至消息队列,再由业务组件从消息队列中获取响应结果后反馈至前端业务层,能够最大限度地满足对紧急事件的处理,同时不同组件间的操作不再耦合,不同组件间的工作执行不需要等待其他组件响应后才能执行,可以快速地对大量的消息数据进行处理、更新,提高消息数据处理、更新的效率,同时各个组件可以灵活地开启或停止,提高资源的利用率。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被所述处理器执行时实现一种消息数据的更新方法,包括步骤:通过消息组件接收业务组件发起的数据处理请求,确定所述数据处理请求的请求类型,并构造所述请求类型的消息队列;基于所述消息组件构造所述数据处理请求的消息事件,并将所述消息事件发送至所述请求类型对应的消息队列中;控制响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,并将响应所述消息事件后的响应结果返回至所述消息队列;当业务组件监听到所述消息队列中的响应结果后,获取所述响应结果并将所述响应结果反馈至前端业务层。所述计算机设备提供了一种利用多个独立的组件实现分布式的消息数据更新的方法,通过解耦应用的前端业务层与消息处理系统,并且消息处理系统的多个组件也进行解耦,通过业务组件获取前端业务层的操作,然后通过消息组件接收业务组件发起的数据处理请求,再确定所述数据处理请求的请求类型,然后创建不同请求类型对应的消息队列,同时将为数据处理请求构造为消息事件以及消息队列,将不同类型的消息事件存放至不同的消息队列中,方便对不同消息事件进行等级划分,不同响应组件能够根据预设的规则对消息队列中的不同消息事件进行响应,尤其可以对紧急等级高的消息事件进行优先响应,从而得到响应结果后反馈至消息队列,再由业务组件从消息队列中获取响应结果后反馈至前端业务层,能够最大限度地满足对紧急事件的处理,同时不同组件间的操作不再耦合,不同组件间的工作执行不需要等待其他组件响应后才能执行,可以快速地对大量的消息数据进行处理、更新,提高消息数据处理、更新的效率,同时各个组件可以灵活地开启或停止,提高资源的利用率。
本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种消息数据的更新方法,其特征在于,包括:
通过消息组件接收业务组件发起的数据处理请求,确定所述数据处理请求的请求类型,并构造所述请求类型的消息队列;
基于所述消息组件构造所述数据处理请求的消息事件,并将所述消息事件发送至所述请求类型对应的消息队列中;
控制响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,并将响应所述消息事件后的响应结果返回至所述消息队列;
当业务组件监听到所述消息队列中的响应结果后,获取所述响应结果并将所述响应结果反馈至前端业务层。
2.根据权利要求1所述的消息数据的更新方法,其特征在于,所述基于所述消息组件构造所述数据处理请求的消息事件,并将所述消息事件发送至所述请求类型对应的消息队列中之后,还包括;
根据预设的缓存规则依次获取所述消息队列中的目标消息事件;
将所述目标消息事件持久化存储至外置的存储器。
3.根据权利要求1所述的消息数据的更新方法,其特征在于,所述控制响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,并将响应所述消息事件后的响应结果返回至所述消息队列,包括:
获取若干个响应组件的负载状态;
选取负载状态低于预设值的响应组件作为目标响应组件;
控制所述目标响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,并将响应所述消息事件后的响应结果返回至所述消息队列。
4.根据权利要求1所述的消息数据的更新方法,其特征在于,所述基于所述消息组件构造所述数据处理请求的消息事件,并将所述消息事件发送至所述请求类型对应的消息队列中,还包括:
基于所述消息组件构造所述数据处理请求的消息事件,为所述消息事件添加对应的紧急等级标识,并将添加所述紧急等级标识的消息事件发送至所述请求类型对应的消息队列中;
所述控制响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,包括:
控制响应组件从所述消息队列中按照所述紧急等级标识获取所述消息事件,并对所述消息事件进行响应。
5.根据权利要求1所述的消息数据的更新方法,其特征在于,所述当业务组件监听到所述消息队列中的响应结果后,获取所述响应结果并将所述响应结果反馈至前端业务层之后,还包括:
判断所述响应结果是否正确,得到判断结果;
根据所述判断结果统计响应组件响应所述消息事件的正确率。
6.根据权利要求5所述的消息数据的更新方法,其特征在于,所述根据所述判断结果统计响应组件响应所述消息事件的正确率之后,还包括:
获取不同响应组件对不同类型的消息事件的响应结果的正确率;
将正确率满足预设要求的响应组件配置为对应类型的消息事件的优先响应组件。
7.根据权利要求1所述的消息数据的更新方法,其特征在于,所述当业务组件监听到所述消息队列中的响应结果后,获取所述响应结果并将所述响应结果反馈至前端业务层之后,还包括:
计算所述响应结果的耗时数据;
根据所述耗时数据统计响应组件响应所述消息事件的性能数据;
将性能数据满足预设要求的响应组件配置为对应消息事件的优先响应组件。
8.一种消息数据的更新装置,其特征在于,包括:
消息接收模块:用于通过消息组件接收业务组件发起的数据处理请求,确定所述数据处理请求的请求类型,并构造所述请求类型的消息队列;
事件构建模块:用于基于所述消息组件构造所述数据处理请求的消息事件,并将所述消息事件发送至所述请求类型对应的消息队列中;
执行响应模块:用于控制响应组件从所述消息队列中获取所述消息事件并对所述消息事件进行响应,并将响应所述消息事件后的响应结果返回至所述消息队列;
结果反馈模块:用于当业务组件监听到所述消息队列中的响应结果后,获取所述响应结果并将所述响应结果反馈至前端业务层。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述消息数据的更新方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述消息数据的更新方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011492374.1A CN112559211A (zh) | 2020-12-16 | 2020-12-16 | 消息数据的更新方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011492374.1A CN112559211A (zh) | 2020-12-16 | 2020-12-16 | 消息数据的更新方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112559211A true CN112559211A (zh) | 2021-03-26 |
Family
ID=75064480
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011492374.1A Pending CN112559211A (zh) | 2020-12-16 | 2020-12-16 | 消息数据的更新方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112559211A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113934541A (zh) * | 2021-10-15 | 2022-01-14 | 珠海百丰网络科技有限公司 | 物联网连接的金融终端数据识别与处理系统及其方法 |
WO2023040399A1 (zh) * | 2021-09-18 | 2023-03-23 | 深圳前海微众银行股份有限公司 | 一种业务持久化方法及装置 |
CN116431688A (zh) * | 2022-11-14 | 2023-07-14 | 北京远舢智能科技有限公司 | 一种数据的处理方法、装置、电子设备及存储介质 |
CN116662040A (zh) * | 2023-07-28 | 2023-08-29 | 百家云集团有限公司 | 一种消息的分发方法、装置、电子设备及存储介质 |
-
2020
- 2020-12-16 CN CN202011492374.1A patent/CN112559211A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023040399A1 (zh) * | 2021-09-18 | 2023-03-23 | 深圳前海微众银行股份有限公司 | 一种业务持久化方法及装置 |
CN113934541A (zh) * | 2021-10-15 | 2022-01-14 | 珠海百丰网络科技有限公司 | 物联网连接的金融终端数据识别与处理系统及其方法 |
CN116431688A (zh) * | 2022-11-14 | 2023-07-14 | 北京远舢智能科技有限公司 | 一种数据的处理方法、装置、电子设备及存储介质 |
CN116431688B (zh) * | 2022-11-14 | 2024-05-03 | 北京远舢智能科技有限公司 | 一种数据的处理方法、装置、电子设备及存储介质 |
CN116662040A (zh) * | 2023-07-28 | 2023-08-29 | 百家云集团有限公司 | 一种消息的分发方法、装置、电子设备及存储介质 |
CN116662040B (zh) * | 2023-07-28 | 2023-09-29 | 百家云集团有限公司 | 一种消息的分发方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112559211A (zh) | 消息数据的更新方法、装置、计算机设备及存储介质 | |
CN109064345B (zh) | 消息处理方法、系统以及计算机可读存储介质 | |
WO2020211579A1 (zh) | 一种基于分布式批量处理系统的处理方法、装置及系统 | |
CN110489447B (zh) | 数据查询方法、装置、计算机设备和存储介质 | |
CN111078733B (zh) | 批量任务处理方法、装置、计算机设备和存储介质 | |
CN112579622B (zh) | 业务数据的处理方法、装置及设备 | |
CN113656473A (zh) | 接口访问方法、装置、设备及介质 | |
CN112579319A (zh) | 一种基于LRU Cache优化的服务调用方法及装置 | |
CN113741923A (zh) | 一种应用更新方法、装置、设备及介质 | |
CN115168031A (zh) | 一种雾计算系统、方法、电子设备及存储介质 | |
CN113360210A (zh) | 数据对账方法、装置、计算机设备和存储介质 | |
CN113010306A (zh) | 业务数据处理方法、装置、计算机设备和存储介质 | |
CN113849295A (zh) | 模型训练的方法、装置及计算机可读存储介质 | |
CN108920278B (zh) | 资源分配方法及装置 | |
CN111062634A (zh) | 审批任务分配方法、装置、计算机设备及存储介质 | |
CN113992509B (zh) | Sdn网络业务配置下发方法、装置及存储介质 | |
CN112685157B (zh) | 任务处理方法、装置、计算机设备及存储介质 | |
CN113709099A (zh) | 混合云防火墙规则下发方法、装置、设备及存储介质 | |
CN112685613A (zh) | 一种资源包查询的方法、装置及信息处理系统 | |
CN114650218A (zh) | 一种数据获取方法、设备、系统及存储介质 | |
CN111866130B (zh) | 基于zookeeper的日志处理方法、装置、计算机设备和存储介质 | |
CN113487344B (zh) | 通信业务预测方法、集中服务器、边缘业务终端和介质 | |
EP4181483A1 (en) | Apparatus and method for tracking data in edge cloud environment | |
CN115391009A (zh) | 一种批量业务的资源调度方法、系统、设备及存储介质 | |
CN118138667A (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 |