CN110032459A - 消息队列配置方法、装置、计算机设备及存储介质 - Google Patents
消息队列配置方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN110032459A CN110032459A CN201910323245.0A CN201910323245A CN110032459A CN 110032459 A CN110032459 A CN 110032459A CN 201910323245 A CN201910323245 A CN 201910323245A CN 110032459 A CN110032459 A CN 110032459A
- Authority
- CN
- China
- Prior art keywords
- target
- consumer
- message queue
- message
- information
- 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.)
- Granted
Links
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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了一种消息队列配置方法、装置、计算机设备及存储介质。所述方法包括:扫描消息队列组件并加载;通过所述消息队列组件查找附加注解信息的至少一个目标消费者;根据所述目标消费者的注解信息确定对应的目标配置信息;根据所述目标配置信息进行注册,以使注册的目标生产者对应的目标消费者通过所述消息队列接收所述目标生产者产生的消息。本发明实施例可以简化更新消息队列的过程,降低在消息队列中添加消费者及对应生产者的难度,提高更新消息队列的效率。
Description
技术领域
本发明实施例涉及数据处理技术,尤其涉及一种消息队列配置方法、装置、计算机设备及存储介质。
背景技术
随着大数据时代的到来,应用程序需要处理的数据越来越多。由于应用程序可能来不及同步处理大量请求,导致请求造成堵塞,目前可以采用消息队列(Message Queue,MQ)实现异步处理请求,从而缓解请求堆积的压力。
具体的,消息队列具体包括生产者,用于生产消息;消费者,用于获取消息并处理;消息体,用于封装业务数据实现消息的传输。其中,消息队列包括发布/订阅模式,使用主题(topic)作为通信载体,生产者将消息发布到topic中,同时有多个消费者(订阅)消费该消息。
目前,在使用消息队列之前,需要预先确定生产者和消费者,并建立生产者与消费者之间的绑定关系,即消费者与需要获取的生产者之间的对应关系。该对应关系通常是预先规定好的。在应用程序中添加MQ消费者,通常需要在应用程序对应的程序代码中对生产者、消费者和消费者所属的消费组涉及的代码部分均进行手动调整,从而导致流程繁杂,涉及的调整内容多,调整难度大。
发明内容
本发明实施例提供了一种消息队列配置方法、装置、计算机设备及存储介质,可以简化更新消息队列的过程,降低在消息队列中添加消费者及对应生产者的难度,提高更新消息队列的效率。
第一方面,本发明实施例提供了一种消息队列配置方法,包括:
扫描消息队列组件并加载;
通过所述消息队列组件查找附加注解信息的至少一个目标消费者;
根据所述目标消费者的注解信息确定对应的目标配置信息;
根据所述目标配置信息进行注册,以使注册的目标生产者对应的目标消费者通过所述消息队列接收所述目标生产者产生的消息。
第二方面,本发明实施例还提供了一种消息队列配置装置,包括:
消息队列组件加载模块,用于扫描消息队列组件并加载;
目标消费者查询模块,用于通过所述消息队列组件查找附加注解信息的至少一个目标消费者;
配置信息获取模块,用于根据所述目标消费者的注解信息确定对应的目标配置信息;
注册模块,用于根据所述目标配置信息进行注册,以使注册的目标生产者对应的目标消费者通过所述消息队列接收所述目标生产者产生的消息。
第三方面,本发明实施例还提供了一种设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序所述处理器执行所述程序时实现如本发明实施例中任一所述的消息队列配置方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例中任一所述的消息队列配置方法。
本发明实施例通过消息队列组件获取目标消费者的注解信息,从而确定目标消费者对应的目标配置信息,并基于目标配置信息进行注册,实现在消息队列中创建目标消费者对应的目标生产者,从而实现目标消费者根据消息队列获取目标生产者产生的消息,由此实现在消息队列中新增消费者和对应生产者,解决了现有技术中人工手动增加调整程序代码的内容多和难度大的问题,简化更新消息队列的过程,降低在消息队列中添加消费者及对应生产者的难度,提高更新消息队列的效率。
附图说明
图1是本发明实施例一中的一种消息队列配置方法的流程图;
图2a是本发明实施例二适用一种应用场景的流程图;
图2b是本发明实施例二适用一种应用场景的流程图;
图3是本发明实施例三中的一种消息队列配置装置的结构示意图;
图4是本发明实施例四中的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种消息队列配置方法的流程图,本实施例可适用于在消息队列中添加新的消费者的情况,该方法可以由本发明实施例提供的消息队列配置装置来执行,该装置可采用软件和/或硬件的方式实现,并一般可集成使用消息队列进行通信的电子设备中的应用程序,示例性的,电子设备包括计算机设备等。如图1所示,本实施例的方法具体包括:
S110,扫描消息队列组件并加载。
消息队列用于应用程序与应用程序之间通信,消息队列组件用于生成实现在消息队列中新增消费者和生产者的代码。
在本实施例中,目标消费者的定义和配置需要通过用户手动编写代码实现,而对应的生产者的定义和配置可以通过消息队列组件实现。实际上,消息队列组件包含生产者的通用配置信息,此外,在消息队列中进行生产者注册时还需要对应的消费者的信息,也即,生产者的实现还需要对应的消费者信息。具体的,通过获取匹配的消费者以及消费者所属消费组的配置信息,即可确定生产者的完整配置信息,从而实现在消息队列中进行生产者注册。
S120,通过所述消息队列组件查找附加注解信息的至少一个目标消费者。
目标消费者包括消息队列关联的新增消费者。需要说明的是,消息队列中除了目标消费者,还包括初始消费者、对应的初始生产者和对应的初始消费组。其中,初始消费者、对应的初始生产者和对应的初始消费组均是通过用户手动编写代码实现。可以理解的是,本实施例中提供的消息队列配置方法不会影响初始消费者、对应的初始生产者和对应的初始消费组的定义和配置,仅会在此基础上新增加消费者、对应的生产者和对应的消费组。也即本实施例提供的消息队列配置方法可以兼容消息队列的历史使用方法,实现无侵入式接入。
注解信息用于定义和配置目标消费者匹配的信息,具体的,包括目标消费者对应的生产者和消费组等。可选的,所述注解信息包括所述目标消费者匹配的目标生产者。
此外,可选的,所述注解信息还包括所述目标消费者匹配的目标消费组和所述目标消费组的配置信息。其中,消费组用于区分不同类型的消费者,消息队列中的所有消息可以被不同消费组分别消费一次,一个消费组消费掉的消息,其它消费组仍然可以消费。同一个消费组下可以有多个消息消费者并行消费,消费同一个队列里的不同消息。
通过在注解信息添加目标消费组以及目标消费组的配置信息,实现自定义消费组,从而实现使用不同参数配置消费组,提高在消息队列中定义和配置消费组的灵活性,简化消息队列中定义和配置消费组的操作,提高在消息队列中新增消费组的效率。
S130,根据所述目标消费者的注解信息确定对应的目标配置信息。
目标配置信息可以是指实现目标消费者的全部配置信息,具体包括目标消费者对应的生产者关联的全部配置信息以及目标消费者对应的消费组关联的全部配置信息。其中,由于注解信息可以仅包括部分配置信息,剩余的配置信息可以此采用预先存储的默认的配置信息,从而形成部分自定义配置和部分默认配置的目标配置信息。示例性的,目标配置信息可以包括会话(session)信息、队列名和/或主题(topic)和分配的线程(如最大线程数)等。
S140,根据所述目标配置信息进行注册,以使注册的目标生产者对应的目标消费者通过所述消息队列接收所述目标生产者产生的消息。
其中,注册是指在消息队列中构建目标消费者对应的生产者和目标消费者对应的消费组。具体的,注册可以通过预先创建的注册组件实现。在注册完成之后,目标消费者可以基于所属消费组分配的资源,在更新后的消息队列中实现获取对应的生产者产生的消息。
本发明实施例通过消息队列组件获取目标消费者的注解信息,从而确定目标消费者对应的目标配置信息,并基于目标配置信息进行注册,实现在消息队列中创建目标消费者对应的目标生产者,从而实现目标消费者根据消息队列获取目标生产者产生的消息,由此实现在消息队列中新增消费者和对应生产者,解决了现有技术中人工手动增加调整程序代码的内容多和难度大的问题,简化更新消息队列的过程,降低在消息队列中添加消费者及对应生产者的难度,提高更新消息队列的效率。
在上述实施例的基础上,可选的,在根据所述目标配置信息进行生产者注册之后,还包括:当接收到待处理消息体时,获取所述待处理消息体的标识信息;根据所述待处理消息体的标识信息,从所述至少一个目标消费者中确定目标响应消费者,并指示所述目标响应消费者接收所述待处理消息体并处理。
其中,标识信息用于确定待处理消息体。在本实施例中,采用的是发布/订阅模式,生产者生成待处理消息体并发送至topic,可以根据消费者的配置信息,确定各消费者是否订阅该topic,并将订阅该topic的消费者作为目标响应消费者,将该待处理消息体发送至目标响应消费者,进行处理。可选的,待处理消息体的标识信息包括主题(topic)和/或标签(tags)。其中,tags是topic的分类,即一个topic包括多个tags。具体的,目标响应消费者包括处理器,可以调用处理器的方法对该待处理消息体进行处理。
通过基于待处理消息体的标识信息确定订阅该待处理消息体的消费者,从而,保证待处理消息体正确发送到需要待处理消息体的消费者,从而提高消息队列中消息传输的准确性。
具体的,目标消费者的确定方式可以是,可选的,所述从所述至少一个目标消费者中确定目标响应消费者,包括:根据所述注解信息,获取至少一个目标消费组;从所述至少一个目标消费组中确定所述待处理消息体对应的响应消费组,以及所述响应消费组中的目标响应消费者。
具体的,根据注解信息可以确定各目标消费者所属的目标消费组以及各目标消费组的配置信息。进而可以根据目标消费组的配置信息确定需要从该topic接收待处理消息体的响应消费组。从响应消费组中任选一个消费者作为目标响应消费者,或者可以根据该响应消费组中的至少一个消费者的处理记录,将处理过该类型的待处理消息体的消费者作为目标响应消费者。此外,还有其他方式确定,对此,本发明实施例不作具体限制。
可选的,所述从所述至少一个目标消费组中确定所述响应消费组中的目标响应消费者,包括:获取所述响应消费组中各消费者的历史响应记录;根据所述待处理消息体的标识信息,在所述历史响应记录中进行查询;如果查询到与所述标识信息匹配的历史响应信息,将与所述历史响应信息关联的目标消费者作为所述待处理消息体的目标响应消费者。
其中,历史响应记录用于记录各消费者处理消息过程的信息,示例性的,历史响应记录包括哈希(hash)缓存,用于存储各消费者处理消息的命令。通过将处理过的消费者作为目标响应消费者,可以保证该消息正常处理,从而提高处理该消息的稳定性。
在上述实施例的基础上,可选的,在扫描消息队列组件并加载之前,还包括:接收到启动指令;获取除目标消费者之外的初始消费者和/或所述初始消费者对应的初始生产者;获取所述初始消费者和/或所述初始生产者的初始配置信息并注册。
其中,启动指令用于启动应用程序。初始消费者可以是指通过历史使用方法注册的消费者;初始消费者对应的初始生产者可以是指通过历史使用方法注册的生产者。初始配置信息用于注册初始消费者或初始生产者。实际上初始消费者接收的消息来源和初始生产者产生信息的目的地,是通过用户手动编写代码直接确定的,若对其进行调整或者新增信息,了解之前的编写逻辑,并手动重新修改,难度大,操作繁杂。在注册之后,初始消费者通过消息队列接收对应的初始生产者产生的消息,以及初始生产者可以通过消息队列将产生的消息发送到对应的初始消费者中。
通过在应用程序启动之后,先将通过历史使用方法实现的初始消费者和初始生产者进行注册,再注册目标消费者和对应的目标生产者,实现兼容消息队列的历史使用方法,实现无侵入式接入。
实施例二
图2a为本发明实施例二中的一种消息队列配置方法的流程图,本实施例是消息队列配置方法适用的一种具体应用场景。具体的,所述消息队列配置方法包括:
S201,接收到启动指令。
S202,扫描消息队列组件并加载。
其中,启动应用程序,可以通过spring框架扫描预先下载的软件包中的消息队列组件。
S203,通过所述消息队列组件查找附加注解信息的至少一个目标消费者。
S204,根据所述目标消费者的注解信息确定对应的目标消费组,以及所述目标消费组的配置信息。
其中,根据目标消费者的注解信息获取目标消费者对应的目标消费组,若目标消费者的注解信息中未包括目标消费组,可以采用默认的消费组作为目标消费组。
S205,根据所述配置信息进行生产者注册,以使注册的目标生产者对应的目标消费组中的目标消费者通过所述消息队列接收所述目标生产者产生的消息。
其中,具体可以调用注册组件实现生产者注册流程。
在上述实施例的基础上,如图2b所示,可选的,在根据所述目标配置信息进行生产者注册之后,还包括:
S206,当接收到待处理消息体时,获取所述待处理消息体的标识信息。
S207,获取附加注解信息的至少一个目标消费者,并根据所述注解信息,获取至少一个目标消费组。
S208,根据所述待处理消息体的标识信息,从所述至少一个目标消费组中确定所述待处理消息体对应的响应消费组,以及所述响应消费组中的目标响应消费者。
S209,获取所述待处理消息体的参数信息。
S210,将所述参数信息发送至所述目标响应消费者,以使所述目标响应消费者基于所述参数信息对所述待处理消息体进行处理。
本发明实施例通过消息队列组件获取目标消费者的注解信息,并确定目标消费组的配置信息,而后根据配置信息在消息队列服务中注册目标生产者,同时在目标生产者注册完成后,根据目标消费者的注解信息以及待处理消息体的标识信息,实现目标消费者接收到待处理消息体并进行处理,实现自动注册目标消费者匹配的目标生产者,以及实现消费信息,减少更新消息队列的人工成本,降低在消息队列中添加消费者及对应生产者的难度,提高更新消息队列的效率。
实施例三
图3为本发明实施例三中的一种消息队列配置装置的示意图。实施例三是实现本发明上述实施例提供的消息队列配置方法的相应装置,该装置可采用软件和/或硬件的方式实现,并一般可集成具备消息队列功能的电子设备中,例如,计算机设备等。
消息队列组件加载模块310,用于扫描消息队列组件并加载;
目标消费者查询模块320,用于通过所述消息队列组件查找附加注解信息的至少一个目标消费者;
配置信息获取模块330,用于根据所述目标消费者的注解信息确定对应的目标配置信息;
注册模块340,用于根据所述目标配置信息进行注册,以使注册的目标生产者对应的目标消费者通过所述消息队列接收所述目标生产者产生的消息。
本发明实施例通过消息队列组件获取目标消费者的注解信息,从而确定目标消费者对应的目标配置信息,并基于目标配置信息进行注册,实现在消息队列中创建目标消费者对应的目标生产者,从而实现目标消费者根据消息队列获取目标生产者产生的消息,由此实现在消息队列中新增消费者和对应生产者,解决了现有技术中人工手动增加调整程序代码的内容多和难度大的问题,简化更新消息队列的过程,降低在消息队列中添加消费者及对应生产者的难度,提高更新消息队列的效率。
进一步的,所述消息队列配置装置,具体用于:当接收到待处理消息体时,获取所述待处理消息体的标识信息;根据所述待处理消息体的标识信息,从所述至少一个目标消费者中确定目标响应消费者,并指示所述目标响应消费者接收所述待处理消息体并处理。
进一步的,所述注解信息包括所述目标消费者匹配的目标生产者、所述目标消费者匹配的目标消费组和所述目标消费组的配置信息。
进一步的,所述消息队列配置装置,具体用于:从所述至少一个目标消费组中确定所述待处理消息体对应的响应消费组,以及所述响应消费组中的目标响应消费者。
进一步的,所述消息队列配置装置,具体用于:获取所述响应消费组中各消费者的历史响应记录;根据所述待处理消息体的标识信息,在所述历史响应记录中进行查询;如果查询到与所述标识信息匹配的历史响应信息,将与所述历史响应信息关联的目标消费者作为所述待处理消息体的目标响应消费者。
进一步的,所述消息队列配置装置,具体用于:接收到启动指令;获取除目标消费者之外的初始消费者和/或所述初始消费者对应的初始生产者;获取所述初始消费者和/或所述初始生产者的初始配置信息并注册。
进一步的,所述标识信息包括消息的主题和/或消息的标签。
上述消息队列配置装置可执行本发明任意实施例所提供的消息队列配置方法,具备执行的消息队列配置方法相应的功能模块和有益效果。
实施例四
图4为本发明实施例四提供的一种计算机设备的结构示意图。图4示出了适于用来实现本发明实施方式的示例性计算机设备401的框图。图4显示的计算机设备401仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图4所示,计算机设备401以通用计算设备的形式表现。计算机设备401的组件可以包括但不限于:一个或者多个处理器或者处理单元402,系统存储器403,连接不同系统组件(包括系统存储器403和处理单元402)的总线404。
总线404表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture,ISA)总线,微通道体系结构(Micro Channel Architecture,MCA)总线,增强型ISA总线、视频电子标准协会(Video Electronics Standards Association,VESA)局域总线以及外围组件互连(Peripheral Component Interconnect,PCI)总线。
计算机设备401典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备401访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器403可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory,RAM)405和/或高速缓存存储器406。计算机设备401可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统407可以用于读写不可移动的、非易失性磁介质(图4未显示,通常称为“硬盘驱动器”)。尽管图4中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如紧凑磁盘只读存储器(Compact Disc Read-OnlyMemory,CD-ROM),数字视盘(Digital Video Disc-Read Only Memory,DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线404相连。系统存储器403可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块408的程序/实用工具409,可以存储在例如系统存储器403中,这样的程序模块408包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块408通常执行本发明所描述的实施例中的功能和/或方法。
计算机设备401也可以与一个或多个外部设备410(例如键盘、指向设备等)通信,还可与一个或者多个使得用户能与该计算机设备401交互的设备通信,和/或与使得该计算机设备401能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(Input/Output,I/O)接口412进行。并且,计算机设备401还可以通过网络适配器413与一个或者多个网络(例如局域网(Local Area Network,LAN),广域网(Wide Area Network,WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器413通过总线404与计算机设备401的其它模块通信。应当明白,尽管图4中未示出,可以结合计算机设备401使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、磁盘阵列(Redundant Arrays of Inexpensive Disks,RAID)系统、磁带驱动器以及数据备份存储系统等。
处理单元402通过运行存储在系统存储器403中的程序,从而执行各种功能应用以及数据处理,例如实现本发明任意实施例所提供的一种消息队列配置方法。
实施例五
本发明实施例五提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请所有发明实施例提供的消息队列配置方法:
也即,该程序被处理器执行时实现:扫描消息队列组件并加载;通过所述消息队列组件查找附加注解信息的至少一个目标消费者;根据所述目标消费者的注解信息确定对应的目标配置信息;根据所述目标配置信息进行注册,以使注册的目标生产者对应的目标消费者通过所述消息队列接收所述目标生产者产生的消息。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、RAM、只读存储器(Read OnlyMemory,ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式CD-ROM、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、无线电频率(RadioFrequency,RF)等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括LAN或WAN——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种消息队列配置方法,其特征在于,包括:
扫描消息队列组件并加载;
通过所述消息队列组件查找附加注解信息的至少一个目标消费者;
根据所述目标消费者的注解信息确定对应的目标配置信息;
根据所述目标配置信息进行注册,以使注册的目标生产者对应的目标消费者通过所述消息队列接收所述目标生产者产生的消息。
2.根据权利要求1所述的方法,其特征在于,在根据所述目标配置信息进行注册之后,还包括:
当接收到待处理消息体时,获取所述待处理消息体的标识信息;
根据所述待处理消息体的标识信息,从所述至少一个目标消费者中确定目标响应消费者,并指示所述目标响应消费者接收所述待处理消息体并处理。
3.根据权利要求2所述的方法,其特征在于,所述注解信息包括所述目标消费者匹配的目标生产者、所述目标消费者匹配的目标消费组和所述目标消费组的配置信息。
4.根据权利要求3所述的方法,其特征在于,所述从所述至少一个目标消费者中确定目标响应消费者,包括:
根据所述注解信息,获取至少一个目标消费组;
从所述至少一个目标消费组中确定所述待处理消息体对应的响应消费组,以及所述响应消费组中的目标响应消费者。
5.根据权利要求4所述的方法,其特征在于,所述从所述至少一个目标消费组中确定所述响应消费组中的目标响应消费者,包括:
获取所述响应消费组中各消费者的历史响应记录;
根据所述待处理消息体的标识信息,在所述历史响应记录中进行查询;
如果查询到与所述标识信息匹配的历史响应信息,将与所述历史响应信息关联的目标消费者作为所述待处理消息体的目标响应消费者。
6.根据权利要求1所述的方法,其特征在于,在扫描消息队列组件并加载之前,还包括:
接收到启动指令;
获取除目标消费者之外的初始消费者和/或所述初始消费者对应的初始生产者;
获取所述初始消费者和/或所述初始生产者的初始配置信息并注册。
7.根据权利要求2所述的方法,其特征在于,所述标识信息包括消息的主题和/或消息的标签。
8.一种消息队列配置装置,其特征在于,包括:
消息队列组件加载模块,用于扫描消息队列组件并加载;
目标消费者查询模块,用于通过所述消息队列组件查找附加注解信息的至少一个目标消费者;
配置信息获取模块,用于根据所述目标消费者的注解信息确定对应的目标配置信息;
注册模块,用于根据所述目标配置信息进行注册,以使注册的目标生产者对应的目标消费者通过所述消息队列接收所述目标生产者产生的消息。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7中任一所述的消息队列配置方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的消息队列配置方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910323245.0A CN110032459B (zh) | 2019-04-22 | 2019-04-22 | 消息队列配置方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910323245.0A CN110032459B (zh) | 2019-04-22 | 2019-04-22 | 消息队列配置方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110032459A true CN110032459A (zh) | 2019-07-19 |
CN110032459B CN110032459B (zh) | 2022-05-03 |
Family
ID=67239440
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910323245.0A Active CN110032459B (zh) | 2019-04-22 | 2019-04-22 | 消息队列配置方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110032459B (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110489249A (zh) * | 2019-08-23 | 2019-11-22 | 行吟信息科技(上海)有限公司 | 一种消息的处理方法及系统 |
CN110505162A (zh) * | 2019-08-08 | 2019-11-26 | 腾讯科技(深圳)有限公司 | 消息传输方法、装置及电子设备 |
CN110968439A (zh) * | 2019-11-28 | 2020-04-07 | 蜂助手股份有限公司 | 系统间的消息通知方法、装置、服务器、系统及存储介质 |
CN111401819A (zh) * | 2020-04-08 | 2020-07-10 | 上海东普信息科技有限公司 | 系统间数据推送方法及系统 |
CN111400058A (zh) * | 2020-03-06 | 2020-07-10 | 中国平安人寿保险股份有限公司 | 调用消息的方法、装置、计算机设备及存储介质 |
CN111708586A (zh) * | 2020-06-22 | 2020-09-25 | 平安养老保险股份有限公司 | 应用启动配置项加载方法、装置、计算机设备和存储介质 |
CN111831954A (zh) * | 2020-07-20 | 2020-10-27 | 汉海信息技术(上海)有限公司 | 内容数据更新方法、装置、计算机设备及存储介质 |
CN112099975A (zh) * | 2020-09-25 | 2020-12-18 | Oppo广东移动通信有限公司 | 一种消息处理方法及系统、存储介质 |
CN112181677A (zh) * | 2020-09-02 | 2021-01-05 | 珠海格力电器股份有限公司 | 业务的处理方法和装置、存储介质、电子装置 |
CN112612959A (zh) * | 2020-12-25 | 2021-04-06 | 深圳乐信软件技术有限公司 | 推送信息的处理方法、装置、设备和介质 |
CN112882846A (zh) * | 2021-02-19 | 2021-06-01 | 深圳市云网万店科技有限公司 | 消息队列的数据处理方法、装置、计算机设备和存储介质 |
CN113055480A (zh) * | 2021-03-17 | 2021-06-29 | 网宿科技股份有限公司 | 一种调度方法及装置 |
CN113301009A (zh) * | 2021-02-23 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 一种顺序消息的处理方法及装置 |
CN113495797A (zh) * | 2021-06-22 | 2021-10-12 | 上海百秋电子商务有限公司 | 一种消息队列及消费者动态创建方法及系统 |
CN117033015A (zh) * | 2023-07-27 | 2023-11-10 | 中移互联网有限公司 | 消息处理方法、装置、系统、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7352762B2 (en) * | 2003-05-27 | 2008-04-01 | Sun Microsystems, Inc. | Method and system for messaging to a cluster |
CN101470636A (zh) * | 2007-12-27 | 2009-07-01 | 北京东方通科技发展有限责任公司 | 一种消息的读写方法和装置 |
US20170111301A1 (en) * | 2015-10-16 | 2017-04-20 | Vivint, Inc | Client side queue sharding |
CN107431664A (zh) * | 2015-01-23 | 2017-12-01 | 电子湾有限公司 | 处理大容量网络数据 |
CN108289118A (zh) * | 2017-12-12 | 2018-07-17 | 北京奇艺世纪科技有限公司 | 一种分布式消息流的管理方法和装置 |
CN108897607A (zh) * | 2018-06-05 | 2018-11-27 | 中国平安人寿保险股份有限公司 | 消息处理方法、装置、电子设备及存储介质 |
-
2019
- 2019-04-22 CN CN201910323245.0A patent/CN110032459B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7352762B2 (en) * | 2003-05-27 | 2008-04-01 | Sun Microsystems, Inc. | Method and system for messaging to a cluster |
CN101470636A (zh) * | 2007-12-27 | 2009-07-01 | 北京东方通科技发展有限责任公司 | 一种消息的读写方法和装置 |
CN107431664A (zh) * | 2015-01-23 | 2017-12-01 | 电子湾有限公司 | 处理大容量网络数据 |
US20170111301A1 (en) * | 2015-10-16 | 2017-04-20 | Vivint, Inc | Client side queue sharding |
CN108289118A (zh) * | 2017-12-12 | 2018-07-17 | 北京奇艺世纪科技有限公司 | 一种分布式消息流的管理方法和装置 |
CN108897607A (zh) * | 2018-06-05 | 2018-11-27 | 中国平安人寿保险股份有限公司 | 消息处理方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
田帅: "一种基于MongoDB和HDFS的大规模遥感数据存储系统的设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110505162A (zh) * | 2019-08-08 | 2019-11-26 | 腾讯科技(深圳)有限公司 | 消息传输方法、装置及电子设备 |
CN110505162B (zh) * | 2019-08-08 | 2022-07-26 | 腾讯科技(深圳)有限公司 | 消息传输方法、装置及电子设备 |
CN110489249B (zh) * | 2019-08-23 | 2022-03-22 | 行吟信息科技(上海)有限公司 | 一种消息的处理方法及系统 |
CN110489249A (zh) * | 2019-08-23 | 2019-11-22 | 行吟信息科技(上海)有限公司 | 一种消息的处理方法及系统 |
CN110968439A (zh) * | 2019-11-28 | 2020-04-07 | 蜂助手股份有限公司 | 系统间的消息通知方法、装置、服务器、系统及存储介质 |
CN111400058B (zh) * | 2020-03-06 | 2024-06-04 | 中国平安人寿保险股份有限公司 | 调用消息的方法、装置、计算机设备及存储介质 |
CN111400058A (zh) * | 2020-03-06 | 2020-07-10 | 中国平安人寿保险股份有限公司 | 调用消息的方法、装置、计算机设备及存储介质 |
CN111401819A (zh) * | 2020-04-08 | 2020-07-10 | 上海东普信息科技有限公司 | 系统间数据推送方法及系统 |
CN111708586A (zh) * | 2020-06-22 | 2020-09-25 | 平安养老保险股份有限公司 | 应用启动配置项加载方法、装置、计算机设备和存储介质 |
CN111708586B (zh) * | 2020-06-22 | 2023-06-20 | 平安养老保险股份有限公司 | 应用启动配置项加载方法、装置、计算机设备和存储介质 |
CN111831954A (zh) * | 2020-07-20 | 2020-10-27 | 汉海信息技术(上海)有限公司 | 内容数据更新方法、装置、计算机设备及存储介质 |
CN111831954B (zh) * | 2020-07-20 | 2023-11-03 | 汉海信息技术(上海)有限公司 | 内容数据更新方法、装置、计算机设备及存储介质 |
CN112181677A (zh) * | 2020-09-02 | 2021-01-05 | 珠海格力电器股份有限公司 | 业务的处理方法和装置、存储介质、电子装置 |
CN112181677B (zh) * | 2020-09-02 | 2024-05-31 | 珠海格力电器股份有限公司 | 业务的处理方法和装置、存储介质、电子装置 |
CN112099975A (zh) * | 2020-09-25 | 2020-12-18 | Oppo广东移动通信有限公司 | 一种消息处理方法及系统、存储介质 |
CN112099975B (zh) * | 2020-09-25 | 2024-03-26 | Oppo广东移动通信有限公司 | 一种消息处理方法及系统、存储介质 |
CN112612959A (zh) * | 2020-12-25 | 2021-04-06 | 深圳乐信软件技术有限公司 | 推送信息的处理方法、装置、设备和介质 |
CN112612959B (zh) * | 2020-12-25 | 2024-02-23 | 深圳乐信软件技术有限公司 | 推送信息的处理方法、装置、设备和介质 |
CN112882846A (zh) * | 2021-02-19 | 2021-06-01 | 深圳市云网万店科技有限公司 | 消息队列的数据处理方法、装置、计算机设备和存储介质 |
CN112882846B (zh) * | 2021-02-19 | 2024-02-09 | 深圳市云网万店科技有限公司 | 消息队列的数据处理方法、装置、计算机设备和存储介质 |
CN113301009A (zh) * | 2021-02-23 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 一种顺序消息的处理方法及装置 |
CN113301009B (zh) * | 2021-02-23 | 2023-06-23 | 阿里巴巴集团控股有限公司 | 一种顺序消息的处理方法及装置 |
CN113055480B (zh) * | 2021-03-17 | 2023-05-23 | 网宿科技股份有限公司 | 一种调度方法及装置 |
CN113055480A (zh) * | 2021-03-17 | 2021-06-29 | 网宿科技股份有限公司 | 一种调度方法及装置 |
CN113495797A (zh) * | 2021-06-22 | 2021-10-12 | 上海百秋电子商务有限公司 | 一种消息队列及消费者动态创建方法及系统 |
CN117033015A (zh) * | 2023-07-27 | 2023-11-10 | 中移互联网有限公司 | 消息处理方法、装置、系统、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110032459B (zh) | 2022-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110032459A (zh) | 消息队列配置方法、装置、计算机设备及存储介质 | |
US11595328B2 (en) | Methods, media and computing devices for implementing instant messaging system based on blockchain | |
CN109918040B (zh) | 语音指令分发方法和装置、电子设备及计算机可读介质 | |
RU2701124C2 (ru) | Составные функции разбиения | |
US9288168B2 (en) | Retrieving messages in order in a distributed publish/subscribe system | |
WO2020168893A1 (zh) | 姓名标签显示方法和装置 | |
CN109697100A (zh) | 会话消息显示处理方法和装置 | |
CN110781373B (zh) | 榜单更新方法、装置、可读介质和电子设备 | |
US20160205032A1 (en) | System and method for multi-screen onboarding and interaction | |
US11582173B2 (en) | Message processing method and electronic device supporting the same | |
US20180091460A1 (en) | Augmenting location of social media posts based on proximity of other posts | |
CN108829646A (zh) | 数据存储及解析方法、装置、系统及存储介质 | |
US20180218419A1 (en) | Method and apparatus for providing digital product using user account synchronization | |
CN110708238B (zh) | 用于处理信息的方法和装置 | |
CN107862035A (zh) | 会议记录的网络读取方法、装置、智能平板和存储介质 | |
CN109241164A (zh) | 一种数据处理方法、装置、服务器及存储介质 | |
CN113114557B (zh) | 消息发送方法、装置、电子设备及存储介质 | |
US20160188748A1 (en) | Method for providing information to determine a graph associated with a data item | |
CN105323233A (zh) | 业务同步方法、业务同步装置及业务同步系统 | |
CN104168290A (zh) | 一种终端注册方法及注册服务器 | |
CN112153091A (zh) | 用于确定设备的相关性的方法及装置 | |
CN109766499A (zh) | 群组的加入方法、装置和计算机设备 | |
CN110619218B (zh) | 用于生成信息的方法和装置 | |
CN110619086B (zh) | 用于处理信息的方法和装置 | |
CN112311833B (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 |