CN111953506B - 消息处理方法和处理系统 - Google Patents
消息处理方法和处理系统 Download PDFInfo
- Publication number
- CN111953506B CN111953506B CN201910408040.2A CN201910408040A CN111953506B CN 111953506 B CN111953506 B CN 111953506B CN 201910408040 A CN201910408040 A CN 201910408040A CN 111953506 B CN111953506 B CN 111953506B
- Authority
- CN
- China
- Prior art keywords
- message
- queue
- processing
- disaster recovery
- target
- 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.)
- Active
Links
- 238000012545 processing Methods 0.000 title claims abstract description 133
- 238000003672 processing method Methods 0.000 title claims abstract description 27
- 238000000034 method Methods 0.000 claims abstract description 33
- 238000011084 recovery Methods 0.000 claims description 69
- 230000008569 process Effects 0.000 claims description 18
- 238000012958 reprocessing Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 230000010365 information processing Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
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/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明实施例提供一种消息处理方法和处理系统,该方法包括:获取处理发生故障的目标队列消息;获取存储频率,且该存储频率小于业务消息队列的消息处理速率;基于存储频率向业务消息队列存储目标队列消息,且业务消息队列同时接收用户发送的新消息;根据业务消息队列中消息的存储顺序进行消息处理。本发明解决了队列消息发生处理故障后新消息积压的技术问题。
Description
技术领域
本发明涉及队列消息的处理技术领域,具体涉及一种消息处理方法和处理系统。
背景技术
队列消息即为存储在队列中的消息,消息被存储在消息队列后实现消息的依序处理。队列消息的处理过程中难免会出现消息积压或消息需要重新处理的故障情况,例如,批量修改商品信息时会出现消息积压;以及,在系统进行升级时会因业务逻辑错误需要重新执行处理逻辑以回滚升级。
现有队列技术(例如Kafka)一般是业务层存储有消息的备份,并会为每条消息分配一个Offset,然后通过Position来定位处理的消息。在队列消息的处理发生故障时,若是消息需要重新处理的情况,则回滚到备份中Position指定位置开始处理,这将使用户不断提交的新消息延迟处理,最终导致新消息的积压;若是消息积压的情况,现有队列技术的Position定位方法则根本无法解决,因而,后来用户不断提交的新消息也始终处于等待状态,新消息的积压问题同样存在。
针对现有队列技术应对队列消息处理故障所无法解决的新消息积压问题,目前缺乏有效的解决方案。
发明内容
有鉴于此,本发明实施例提供了一种消息处理方法和处理系统,以解决队列消息发生处理故障后新消息积压的技术问题。
根据本发明的第一方面,提供一种消息处理方法,包括:
获取处理发生故障的目标队列消息;
获取存储频率,所述存储频率小于业务消息队列的消息处理速率;
基于所述存储频率向所述业务消息队列存储所述目标队列消息,且所述业务消息队列同时接收用户发送的新消息;
根据所述业务消息队列中消息的存储顺序进行消息处理。
可选地,获取存储频率,包括:
获取用户发送的新消息和所述目标队列消息之间的处理比例;
根据所述处理速率和所述处理比例,确定所述存储频率。
可选地,在获取处理发生故障的目标队列消息之前,所述方法还包括:将所述目标队列消息存储在旁路消息队列中;
获取处理发生故障的目标队列消息,包括:从所述旁路消息队列中获取所述目标队列消息。
可选地,所述目标队列消息包括需要重新处理的队列消息,所述旁路消息队列包括容灾消息队列;
将所述目标队列消息存储在旁路消息队列中,包括:在所述业务消息队列接收用户发送的新消息时,向所述容灾消息队列中写入所述新消息,以使所述旁路消息队列存储有所述目标队列消息。
可选地,向所述容灾消息队列中写入所述新消息,包括:
在所述容灾消息队列中,将所述新消息写入当前容灾队列,其中,所述当前容灾队列为和当前时段所对应的容灾队列;以及,
所述容灾消息队列中包括多个容灾队列,每个所述容灾队列对应一个时段且根据所对应时段命名。
可选地,所述容灾队列的配置容量为消息写入极限速率的时段均值。
可选地,所述目标队列消息包括积压的队列消息,所述旁路消息队列包括积压消息队列,将所述目标队列消息存储在旁路消息队列中,包括:
在所述业务消息队列中的消息积压数量大于预设阈值的情况下,将所述业务消息队列转化为所述积压消息队列,以使积压消息被所述积压消息队列存储;以及,
配置供消息处理使用的新业务消息队列。
根据本发明的第二方面,提供一种消息处理系统,包括:
第一获取模块,用于获取处理发生故障的目标队列消息;
第二获取模块,用于获取存储频率,所述存储频率小于业务消息队列的消息处理速率;
第一存储模块,用于基于所述存储频率向所述业务消息队列存储所述目标队列消息,且所述业务消息队列同时接收用户发送的新消息;
处理模块,用于根据所述业务消息队列中消息的存储顺序进行消息处理。
可选地,所述第二获取模块用于:
获取用户发送的新消息和所述目标队列消息之间的处理比例;
根据所述处理速率和所述处理比例,确定所述存储频率。
可选地,所述处理系统还包括:第二存储模块,其中,
所述第二存储模块,用于在获取处理发生故障的目标队列消息之前,将所述目标队列消息存储在旁路消息队列中;
所述第一获取模块,用于从所述旁路消息队列中获取所述目标队列消息。
可选地,所述目标队列消息包括需要重新处理的队列消息,所述旁路消息队列包括容灾消息队列,所述第二存储模块用于:
在所述业务消息队列接收用户发送的新消息时,向所述容灾消息队列中写入所述新消息,以使所述旁路消息队列存储有所述目标队列消息。
可选地,所述第二存储模块用于:
在所述容灾消息队列中,将所述新消息写入当前容灾队列,其中,所述当前容灾队列为和当前时段所对应的容灾队列;以及,
所述容灾消息队列中包括多个容灾队列,每个所述容灾队列对应一个时段且根据所对应时段命名。
可选地,所述容灾队列的配置容量为消息写入极限速率的时段均值。
可选地,所述目标队列消息包括积压的队列消息,所述旁路消息队列包括积压消息队列,所述第二存储模块用于:
在所述业务消息队列中的消息积压数量大于预设阈值的情况下,将所述业务消息队列转化为所述积压消息队列,以使积压消息被所述积压消息队列存储;以及,
配置供消息处理使用的新业务消息队列。
根据本发明的第三方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令被执行时实现如第一方面任一实施方式所述的消息处理方法。
根据本发明的第四方面,提供一种消息处理装置,包括:
存储器,用于存储计算机指令;
处理器,耦合到所述存储器,所述处理器被配置为基于所述存储器存储的计算机指令执行实现如第一方面任一实施方式所述的消息处理方法。
本发明的实施例具有以下优点或有益效果:
本发明提供的消息处理方法应用在消息处理系统上,该消息处理方法基于存储频率向业务消息队列存储处理发生故障的目标队列消息,且业务消息队列同时接收用户发送的新消息,因而业务消息队列中相间存储了目标队列消息和新消息,在根据业务消息队列中消息的存储顺序进行消息处理的过程中,新消息和目标队列消息都得到了处理;又由于目标队列消息的存储频率小于业务消息队列的消息处理速率,因而,业务消息队列对新消息预留了处理空间,从而使得新消息不会都处于待处理状态,继而解决了队列消息发生处理故障后新消息积压的技术问题。
附图说明
通过参照以下附图对本发明实施例的描述,本发明的上述以及其它目的、特征和优点将更为清楚,在附图中:
图1是根据本发明实施例的一种消息处理方法流程图;
图2是根据本发明实施例的获取存储频率的方法流程图;
图3是根据本发明实施例的另一种消息处理方法流程图;
图4是根据本发明实施例的消息处理系统结构框图;
图5是根据本发明实施例的消息处理装置结构框图。
具体实施方式
以下基于实施例对本发明进行描述,但是本发明并不仅仅限于这些实施例。在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。为了避免混淆本发明的实质,公知的方法、过程、流程没有详细叙述。另外附图不一定是按比例绘制的。
图1所示是本发明实施例的消息处理方法流程图,该消息处理方法应用在消息处理系统上。参照图1,消息处理方法包括:
步骤S102,获取处理发生故障的目标队列消息。
步骤S104,获取存储频率,存储频率小于业务消息队列的消息处理速率。
具体地,业务消息队列的消息处理速率由消息处理器的处理能力决定,例如,消息处理器每分钟可以处理的消息数量为10万条,则业务消息队列的消息处理速率为每分钟10万。
步骤S106,基于存储频率向业务消息队列存储目标队列消息,且业务消息队列同时接收用户发送的新消息。
需要说明的是,本发明所述新消息,都指用户向业务消息队列发送的消息,区别于消息处理系统向业务消息队列回放的目标队列消息。
步骤S108,根据业务消息队列中消息的存储顺序进行消息处理。
需要说明的是,本发明实施例的上述消息处理方法实施过程中,上述业务消息队列为对步骤S106接收到的目标队列消息以及新消息进行处理的专用消息队列,即,只存储有步骤S106接收的目标队列消息以及新消息,并且步骤S108只对步骤S106接收的目标队列消息以及新消息进行消息处理。
本发明提供的消息处理方法基于存储频率向业务消息队列存储处理发生故障的目标队列消息,且业务消息队列同时接收用户发送的新消息,因而业务消息队列中相间存储了目标队列消息和新消息,在根据业务消息队列中消息的存储顺序进行消息处理的过程中,新消息和目标队列消息都得到了处理;又由于目标队列消息的存储频率小于业务消息队列的消息处理速率,因而,业务消息队列对新消息预留了处理空间,从而使得新消息不会都处于待处理状态,继而解决了队列消息发生处理故障后新消息积压的技术问题。
参照图2,在可选的实施例中,步骤S104,获取存储频率,包括:
步骤S201,获取用户发送的新消息和目标队列消息之间的处理比例。
需要说明的是,上述处理比例可以为新消息和目标队列消息之间的预设处理比例;还可以是根据新消息的预设处理速率确定。例如,新消息的预设处理速率为一分钟6万条,在消息的处理速率为每分钟10万的情况下,上述处理比例则为3:2。进一步,新消息的预设处理速率,可以根据历史数据中新消息的平均接收速率确定,若是新消息需要都被及时处理,则预设处理速率等于新消息的平均接收速率。
步骤S202,根据处理速率和处理比例,确定存储频率。
具体地,可以根据上述处理比例和业务消息队列中消息的处理速率确定目标队列消息的处理速率,并将目标队列消息的处理速率确定为目标队列消息的存储频率。例如,业务消息队列中消息的处理速率为每分钟10万,上述处理比例则为3:2,则目标队列消息的处理速率为每分钟4万,因而,存储频率可以设置为每分钟4万。
本发明实施例中,根据新消息和目标队列消息之间的处理比例以及业务消息队列中消息的处理速率来确定存储频率,有利于根据新消息的处理速率要求有效控制目标队列消息的存储频率,使得新消息得到及时的合理处理。
参照图3,在可选的实施例中,在步骤S102,获取处理发生故障的目标队列消息之前,消息处理方法还包括:步骤S101,将目标队列消息存储在旁路消息队列中;
步骤S102,获取处理发生故障的目标队列消息,包括:从旁路消息队列中获取目标队列消息。
需要说明的是,旁路消息队列为不同于业务消息队列的消息队列。
本发明实施例中,目标队列消息被存储在旁路消息队列中,即,通过旁路消息队列实现目标队列消息的有序存储,便于步骤S102中获取到有序且准确的目标队列消息;并且,上述消息处理方法实施过程开始前,若业务消息队列还用于消息处理乃至处理过程中部分消息处理出现故障即有上述目标队列消息,则通过旁路消息队列存储目标队列,还便于业务消息队列清空以执行上述步骤S108。
在一个可选的实施例中,目标队列消息包括需要重新处理的队列消息,旁路消息队列包括容灾消息队列;步骤S101,将目标队列消息存储在旁路消息队列中,包括:在业务消息队列接收用户发送的新消息时,向容灾消息队列中写入新消息,以使旁路消息队列存储有目标队列消息,从而在业务消息队列中部分处理过的消息需要重新处理时,可以直接从容灾消息队列中获取该需要重新处理的消息队列。
上述向容灾消息队列中写入新消息,可以将新消息写入当前容灾队列,其中,当前容灾队列为和当前时段所对应的容灾队列,且上述容灾消息队列中包括多个容灾队列,每个容灾队列对应一个时段且根据所对应时段命名,从而在某一时段处理过的队列消息需要重新处理时,可以根据时段确定当前容灾队列的名称,以根据当前容灾队列的名称查找到当前容灾队列,继而快速获取需要重新处理的队列消息。
例如,某一应用程序在上线前的测试过程中,消息处理的业务逻辑出现了bug,此时需要对部分处理过的消息进行回放以修复该bug,则可以根据上线时间到修复完业务逻辑的时间为4:00-6:00,查找出4:00-5:00以及5:00-6:00的容灾队列作为要重新处理的消息段。
具体地,向容灾消息队列中写入新消息(即下列叙述中的业务队列名称所包含的消息),可以使用Redis Lua脚本实现,如下所示:
通过上述Lua脚本,对容灾消息队列中的消息实现了原子化的消息逻辑处理,使得业务队列名称所包含的消息被写入具有配置容量的容灾队列中。需要说明的是,上述配置容量需要预先设置,本发明实施例中可以将容灾队列的配置容量设置为消息写入极限速率的时段均值,由于超出该时段均值的容灾队列容量也无利用,因而这种设置有利于存储空间的合理利用。
在另一可选的实施例中,目标队列消息包括积压的队列消息,旁路消息队列包括积压消息队列,步骤S101,将目标队列消息存储在旁路消息队列中,包括:在业务消息队列中的消息积压数量大于预设阈值的情况下,将业务消息队列转化为积压消息队列,以使积压消息被积压消息队列存储;以及,配置供消息处理使用的新业务消息队列。
具体地,将业务消息队列转化为积压消息队列,可以将业务队列名称改写为积压消息队列名称,然后构建新消息队列并对构建的新消息队列设置业务消息队列名称。
需要说明的是,本发明实施例中的业务消息队列和积压消息队列都有预设的使用方式,可以通过对这些消息队列的名称调用来预先设定使用方式,其中,业务消息队列用于被调用处理消息,并在消息处理出现故障后处理其存储的目标队列消息和新消息;积压消息队列用于被调用以处理其中存储的积压队列消息。
本发明实施例中,通过将业务消息队列转化为积压消息队列,实现了对业务消息队列的快速清空,便于业务消息队列执行步骤S108。
图4所示是本发明实施例的消息处理系统结构框图。参照图4,消息处理系统包括:
第一获取模块100,用于获取处理发生故障的目标队列消息;
第二获取模块200,用于获取存储频率,存储频率小于业务消息队列的消息处理速率;
第一存储模块300,用于基于存储频率向业务消息队列存储目标队列消息,且业务消息队列同时接收用户发送的新消息;
处理模块400,用于根据业务消息队列中消息的存储顺序进行消息处理。
本发明实施例中,消息处理系统基于存储频率向业务消息队列存储处理发生故障的目标队列消息,且业务消息队列同时接收用户发送的新消息,因而业务消息队列中相间存储了目标队列消息和新消息,在根据业务消息队列中消息的存储顺序进行消息处理的过程中,新消息和目标队列消息都得到了处理;又由于目标队列消息的存储频率小于业务消息队列的消息处理速率,因而,业务消息队列对新消息预留了处理空间,从而使得新消息不会都处于待处理状态,继而解决了队列消息发生处理故障后新消息积压的技术问题。
在可选的实施例中,第二获取模块用于:
获取用户发送的新消息和目标队列消息之间的处理比例;
根据处理速率和处理比例,确定存储频率。
在可选的实施例中,消息处理系统还包括:第二存储模块,其中,
第二存储模块,用于在获取处理发生故障的目标队列消息之前,将目标队列消息存储在旁路消息队列中;
第一获取模块,用于从旁路消息队列中获取目标队列消息。
在可选的实施例中,目标队列消息包括需要重新处理的队列消息,旁路消息队列包括容灾消息队列,第二存储模块用于:
在业务消息队列接收用户发送的新消息时,向容灾消息队列中写入新消息,以使旁路消息队列存储有目标队列消息。
在可选的实施例中,第二存储模块用于:
在容灾消息队列中,将新消息写入当前容灾队列,其中,当前容灾队列为和当前时段所对应的容灾队列;以及,
容灾消息队列中包括多个容灾队列,每个容灾队列对应一个时段且根据所对应时段命名。
在可选的实施例中,容灾队列的配置容量为消息写入极限速率的时段均值。
在可选的实施例中,目标队列消息包括积压的队列消息,旁路消息队列包括积压消息队列,第二存储模块用于:
在业务消息队列中的消息积压数量大于预设阈值的情况下,将业务消息队列转化为积压消息队列,以使积压消息被积压消息队列存储;以及,
配置供消息处理使用的新业务消息队列。
本发明一实施例的消息处理装置,包括:
存储器,用于存储计算机指令;
处理器,耦合到存储器,处理器被配置为基于存储器存储的计算机指令执行上述消息处理方法。
图5示出的设备仅仅是消息处理装置的一个示例,不应对本发明实施例的功能和使用范围构成任何限制。参考图5,该消息处理装置包括通过总线连接的处理器501、存储器502和输入输出设备503。存储器502包括只读存储器(ROM)和随机访问存储器(RAM),存储器502内存储有执行系统功能所需的各种计算机指令和数据,处理器501从存储器502中读取各种计算机指令以执行各种适当的动作和处理。输入输出设备503包括键盘、鼠标等的输入部分;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分;包括硬盘等的存储部分;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分。存储器502还存储有以下的计算机指令以完成本发明实施例的消息处理方法规定的操作获取存储频率,且该存储频率小于业务消息队列的消息处理速率;基于存储频率向业务消息队列存储目标队列消息,且业务消息队列同时接收用户发送的新消息;根据业务消息队列中消息的存储顺序进行消息处理。
相应地,本发明实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机指令,所述计算机指令被执行时实现上述消息处理方法所规定的操作。
附图中的流程图、框图图示了本发明实施例的系统、方法、装置的可能的体系框架、功能和操作,流程图和框图上的方框可以代表一个模块、程序段或仅仅是一段代码,所述模块、程序段和代码都是用来实现规定逻辑功能的可执行指令。也应当注意,所述实现规定逻辑功能的可执行指令可以重新组合,从而生成新的模块和程序段。因此附图的方框以及方框顺序只是用来更好的图示实施例的过程和步骤,而不应以此作为对发明本身的限制。
系统的各个模块或单元可以通过硬件、固件或软件实现。软件例如包括采用JAVA、C/C++/C#、SQL等各种编程语言形成的编码程序。虽然在方法以及方法图例中给出本发明实施例的步骤以及步骤的顺序,但是所述步骤实现规定的逻辑功能的可执行指令可以重新组合,从而生成新的步骤。所述步骤的顺序也不应该仅仅局限于所述方法以及方法图例中的步骤顺序,可以根据功能的需要随时进行调整。例如将其中的某些步骤并行或按照相反顺序执行。
根据本发明的系统和方法可以部署在单个或多个服务器上。例如,可以将不同的模块分别部署在不同的服务器上,形成专用服务器。或者,可以在多个服务器上分布式部署相同的功能单元、模块或系统,以减轻负载压力。所述服务器包括但不限于在同一个局域网以及通过Internet连接的多个PC机、PC服务器、刀片机、超级计算机等。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种消息处理方法,其特征在于,包括:
获取处理发生故障的目标队列消息;
获取存储频率,所述存储频率小于业务消息队列的消息处理速率;
基于所述存储频率向所述业务消息队列存储所述目标队列消息,且所述业务消息队列同时接收用户发送的新消息;
根据所述业务消息队列中消息的存储顺序进行消息处理;
其中,获取存储频率,包括:获取用户发送的新消息和所述目标队列消息之间的处理比例;根据所述处理速率和所述处理比例,确定所述存储频率。
2.根据权利要求1所述的处理方法,其特征在于,
在获取处理发生故障的目标队列消息之前,所述方法还包括:将所述目标队列消息存储在旁路消息队列中;
获取处理发生故障的目标队列消息,包括:从所述旁路消息队列中获取所述目标队列消息。
3.根据权利要求2所述的处理方法,其特征在于,
所述目标队列消息包括需要重新处理的队列消息,所述旁路消息队列包括容灾消息队列;
将所述目标队列消息存储在旁路消息队列中,包括:在所述业务消息队列接收用户发送的新消息时,向所述容灾消息队列中写入所述新消息,以使所述旁路消息队列存储有所述目标队列消息。
4.根据权利要求3所述的处理方法,其特征在于,向所述容灾消息队列中写入所述新消息,包括:
在所述容灾消息队列中,将所述新消息写入当前容灾队列,其中,所述当前容灾队列为和当前时段所对应的容灾队列;以及,
所述容灾消息队列中包括多个容灾队列,每个所述容灾队列对应一个时段且根据所对应时段命名。
5.根据权利要求4所述的处理方法,其特征在于,所述容灾队列的配置容量为消息写入极限速率的时段均值。
6.根据权利要求2所述的处理方法,其特征在于,所述目标队列消息包括积压的队列消息,所述旁路消息队列包括积压消息队列,将所述目标队列消息存储在旁路消息队列中,包括:
在所述业务消息队列中的消息积压数量大于预设阈值的情况下,将所述业务消息队列转化为所述积压消息队列,以使积压消息被所述积压消息队列存储;以及,
配置供消息处理使用的新业务消息队列。
7.一种消息处理系统,其特征在于,包括:
第一获取模块,用于获取处理发生故障的目标队列消息;
第二获取模块,用于获取存储频率,所述存储频率小于业务消息队列的消息处理速率;
第一存储模块,用于基于所述存储频率向所述业务消息队列存储所述目标队列消息,且所述业务消息队列同时接收用户发送的新消息;
处理模块,用于根据所述业务消息队列中消息的存储顺序进行消息处理;
其中,所述第二获取模块用于:获取用户发送的新消息和所述目标队列消息之间的处理比例;根据所述处理速率和所述处理比例,确定所述存储频率。
8.根据权利要求7所述的处理系统,其特征在于,还包括:第二存储模块,其中,
所述第二存储模块,用于在获取处理发生故障的目标队列消息之前,将所述目标队列消息存储在旁路消息队列中;
所述第一获取模块,用于从所述旁路消息队列中获取所述目标队列消息。
9.根据权利要求8所述的处理系统,其特征在于,所述目标队列消息包括需要重新处理的队列消息,所述旁路消息队列包括容灾消息队列,所述第二存储模块用于:
在所述业务消息队列接收用户发送的新消息时,向所述容灾消息队列中写入所述新消息,以使所述旁路消息队列存储有所述目标队列消息。
10.根据权利要求9所述的处理系统,其特征在于,所述第二存储模块用于:
在所述容灾消息队列中,将所述新消息写入当前容灾队列,其中,所述当前容灾队列为和当前时段所对应的容灾队列;以及,
所述容灾消息队列中包括多个容灾队列,每个所述容灾队列对应一个时段且根据所对应时段命名。
11.根据权利要求10所述的处理系统,其特征在于,所述容灾队列的配置容量为消息写入极限速率的时段均值。
12.根据权利要求8所述的处理系统,其特征在于,所述目标队列消息包括积压的队列消息,所述旁路消息队列包括积压消息队列,所述第二存储模块用于:
在所述业务消息队列中的消息积压数量大于预设阈值的情况下,将所述业务消息队列转化为所述积压消息队列,以使积压消息被所述积压消息队列存储;以及,
配置供消息处理使用的新业务消息队列。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令被执行时实现如权利要求1至6任一项所述的消息处理方法。
14.一种消息处理装置,其特征在于,包括:
存储器,用于存储计算机指令;
处理器,耦合到所述存储器,所述处理器被配置为基于所述存储器存储的计算机指令执行实现如权利要求1至6中任一项所述的消息处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910408040.2A CN111953506B (zh) | 2019-05-15 | 2019-05-15 | 消息处理方法和处理系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910408040.2A CN111953506B (zh) | 2019-05-15 | 2019-05-15 | 消息处理方法和处理系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111953506A CN111953506A (zh) | 2020-11-17 |
CN111953506B true CN111953506B (zh) | 2024-07-19 |
Family
ID=73336463
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910408040.2A Active CN111953506B (zh) | 2019-05-15 | 2019-05-15 | 消息处理方法和处理系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111953506B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106708607A (zh) * | 2015-11-12 | 2017-05-24 | 阿里巴巴集团控股有限公司 | 消息队列的拥塞控制方法和装置 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1738443A (zh) * | 2004-08-16 | 2006-02-22 | 上海华为技术有限公司 | 错误指示报文发送方法及错误指示报文处理方法 |
US8644157B2 (en) * | 2011-03-28 | 2014-02-04 | Citrix Systems, Inc. | Systems and methods for handling NIC congestion via NIC aware application |
US10305762B2 (en) * | 2014-12-19 | 2019-05-28 | Oracle International Corporation | Techniques for determining queue backlogs, active counts, and external system interactions in asynchronous systems |
EP3210116B1 (en) * | 2015-05-15 | 2020-06-24 | Huawei Technologies Co., Ltd. | Queue handling |
CN105306552A (zh) * | 2015-09-30 | 2016-02-03 | 中国科学院计算技术研究所 | 一种基于消息队列的消费均衡方法及系统 |
US9998418B2 (en) * | 2015-11-11 | 2018-06-12 | International Business Machines Corporation | Intelligent message queue management |
CN105630635B (zh) * | 2015-12-29 | 2019-07-30 | 北京京东尚科信息技术有限公司 | 数据容灾系统和方法 |
CN107197015B (zh) * | 2017-05-23 | 2020-09-08 | 阿里巴巴集团控股有限公司 | 一种基于消息队列系统的消息处理方法和装置 |
CN107315641B (zh) * | 2017-05-27 | 2018-08-14 | 杭州铭师堂教育科技发展有限公司 | 基于Qconf的消息队列高可用系统及方法 |
CN107391275A (zh) * | 2017-06-30 | 2017-11-24 | 联想(北京)有限公司 | 一种消息处理方法及电子设备 |
CN109347757B (zh) * | 2018-11-09 | 2022-12-09 | 锐捷网络股份有限公司 | 消息拥塞控制方法、系统、设备及存储介质 |
-
2019
- 2019-05-15 CN CN201910408040.2A patent/CN111953506B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106708607A (zh) * | 2015-11-12 | 2017-05-24 | 阿里巴巴集团控股有限公司 | 消息队列的拥塞控制方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111953506A (zh) | 2020-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105677469B (zh) | 定时任务执行方法及装置 | |
CN112463144B (zh) | 分布式存储的命令行服务方法、系统、终端及存储介质 | |
CN109862101B (zh) | 跨平台应用启动方法、装置、计算机设备和存储介质 | |
CN110795503A (zh) | 分布式存储系统的多集群数据同步方法及相关装置 | |
CN110673936B (zh) | 编排业务的断点续作方法、装置、存储介质及电子设备 | |
CN110555150B (zh) | 一种数据监控方法、装置、设备和存储介质 | |
CN111026572A (zh) | 分布式系统的故障处理方法、装置及电子设备 | |
CN112445860B (zh) | 一种处理分布式事务的方法和装置 | |
CN115964153A (zh) | 一种异步任务处理方法、装置、设备以及存储介质 | |
CN115544044A (zh) | 一种数据一致性保持方法、装置、设备和存储介质 | |
CN114064438A (zh) | 数据库故障处理方法和装置 | |
CN113656239A (zh) | 针对中间件的监控方法、装置及计算机程序产品 | |
CN117724803A (zh) | 云服务部署方法、装置和平台 | |
CN111953506B (zh) | 消息处理方法和处理系统 | |
CN115437766A (zh) | 一种任务处理方法和装置 | |
CN111262727B (zh) | 服务的扩容方法、装置、设备及存储介质 | |
CN114265605A (zh) | 一种业务系统功能组件的版本回退方法和装置 | |
CN111324386B (zh) | 分身应用程序的启动方法、装置、电子设备及存储介质 | |
CN113760469A (zh) | 分布式计算的方法和装置 | |
CN112925623A (zh) | 任务处理方法、装置、电子设备和介质 | |
CN111177241A (zh) | 一种数据处理方法、装置、系统、电子设备及其存储介质 | |
CN112953810A (zh) | 一种网络请求的处理方法和装置 | |
CN111488236A (zh) | 一种订单异常处理方法、服务器、存储介质及处理装置 | |
CN111767113A (zh) | 一种用于实现容器驱逐的方法和装置 | |
CN114281604B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |