基于多机房实现的消息队列的管理方法及电子设备技术

技术编号:26650445 阅读:24 留言:0更新日期:2020-12-09 00:46
本发明专利技术公开了一种基于多机房实现的消息队列的管理方法及电子设备,该方法包括:多个机房中的第一机房响应于与第一机房相对应的消息生产端触发的消息写入请求,将消息写入请求中包含的消息数据写入与第一机房相对应的消息队列,并将第一机房相对应的消息队列以及第一机房之间的队列机房映射关系存储到配置元数据中;多个机房中的第二机房响应于与第二机房相对应的消息消费端触发的消息消费请求,将与消息消费请求相对应的消息队列确定为目标消息队列,根据配置元数据将目标消息队列所在的机房确定为目标机房,将目标机房中的目标消息队列的消息数据传输至第二机房。该方式避免了跨机房生产消息所导致的延迟问题,适用于实时性较高的业务场景。

【技术实现步骤摘要】
基于多机房实现的消息队列的管理方法及电子设备
本专利技术涉及计算机领域,具体涉及一种基于多机房实现的消息队列的管理方法及电子设备。
技术介绍
消息队列用于将待传输的数据存储到队列中。其中,向队列中写入数据的业务端叫做消息生产端,从队列中读取数据的业务端叫做消息消费端。通过消息队列能够实现多个消息数据的有序存储,从而有利于实现消息的可靠传输。随着业务场景的日益复杂,很多业务系统中包含多个机房,在跨机房的实现方案中,消息生产端需要预先确定消息消费端所处的机房,并且,当消息消费端与消息生产端分别位于不同机房时,为了保障消息消费端的消费顺畅,需要将消息生产端在第一机房生产的消息数据传输到消息消费端所在的第二机房进行存储。但是,在实现本专利技术的过程中,专利技术人发现现有技术中的上述方案至少存在下述缺陷:一方面,在复杂的业务场景中,一个消息生产端可能对应于多个消息消费端,如何预先确定消息消费端的数量以及各个消息消费端所处的机房成为亟待解决的技术难题;另一方面,消息生产端需要将生成的消息数据跨机房传输至消息消费端所在的机房,然而,由于两个机本文档来自技高网...

【技术保护点】
1.一种基于多机房实现的消息队列的管理方法,包括:/n多个机房中的第一机房响应于与所述第一机房相对应的消息生产端触发的消息写入请求,将所述消息写入请求中包含的消息数据写入与所述第一机房相对应的消息队列,并将所述第一机房相对应的消息队列以及所述第一机房之间的队列机房映射关系存储到配置元数据中;/n多个机房中的第二机房响应于与所述第二机房相对应的消息消费端触发的消息消费请求,将与所述消息消费请求相对应的消息队列确定为目标消息队列,根据所述配置元数据将所述目标消息队列所在的机房确定为目标机房,将所述目标机房中的所述目标消息队列的消息数据传输至所述第二机房,以供所述消息消费端消费。/n

【技术特征摘要】
1.一种基于多机房实现的消息队列的管理方法,包括:
多个机房中的第一机房响应于与所述第一机房相对应的消息生产端触发的消息写入请求,将所述消息写入请求中包含的消息数据写入与所述第一机房相对应的消息队列,并将所述第一机房相对应的消息队列以及所述第一机房之间的队列机房映射关系存储到配置元数据中;
多个机房中的第二机房响应于与所述第二机房相对应的消息消费端触发的消息消费请求,将与所述消息消费请求相对应的消息队列确定为目标消息队列,根据所述配置元数据将所述目标消息队列所在的机房确定为目标机房,将所述目标机房中的所述目标消息队列的消息数据传输至所述第二机房,以供所述消息消费端消费。


2.根据权利要求1所述的方法,其中,所述方法执行之前,进一步包括:分别在各个机房中设置代理模块,各个机房的代理模块共同维护所述配置元数据;
则所述将所述消息写入请求中包含的消息数据写入与所述第一机房相对应的消息队列,并将所述第一机房相对应的消息队列以及所述第一机房之间的队列机房映射关系存储到配置元数据中的步骤由第一机房中的代理模块执行;
且所述将与所述消息消费请求相对应的消息队列确定为目标消息队列,根据所述配置元数据将所述目标消息队列所在的机房确定为目标机房的步骤由第二机房中的代理模块执行。


3.根据权利要求2所述的方法,其中,所述方法执行之前,进一步包括:分别在各个机房中设置同步模块,各个同步模块与本机房中的代理模块相互通信;
则所述将所述目标机房中的所述目标消息队列的消息数据传输至所述第二机房包括:通过所述目标机房中的同步模块,将所述目标机房中的目标消息队列的消息数据传输至第二机房。


4.根据权利要求3所述的方法,其中,所述多个机房中的第二机房响应于与所述第二机房相对应的消息消费端触发...

【专利技术属性】
技术研发人员:王利超
申请(专利权)人:掌阅科技股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1