[发明专利]基于多机房实现的消息队列的消费方法及电子设备在审
申请号: | 202010906376.4 | 申请日: | 2020-09-01 |
公开(公告)号: | CN112068972A | 公开(公告)日: | 2020-12-11 |
发明(设计)人: | 冯威 | 申请(专利权)人: | 掌阅科技股份有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F16/25;G06F16/22 |
代理公司: | 北京市浩天知识产权代理事务所(普通合伙) 11276 | 代理人: | 刘兰兰 |
地址: | 100124 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 机房 实现 消息 队列 消费 方法 电子设备 | ||
本发明公开了一种基于多机房实现的消息队列的消费方法及电子设备,该方法包括:当多个机房中的任一机房接收到消息写入请求时,将消息写入请求中包含的消息数据写入与接收到消息写入请求的机房相对应的消息队列;当多个机房中的任一机房接收到消息消费请求时,获取消息消费请求中包含的待消费的消息队列的队列标识,将多个机房中与队列标识相匹配的消息队列所在的机房确定为目标机房,从目标机房中获取与队列标识相对应的消息队列的消息数据进行消费。该方式能够在消费过程中主动从多个机房中查询消费端需要的数据,从而能够在消费端无需跟随生产端切换机房的前提下进行消费,并且能够有效防止因消费滞后而导致的数据遗漏问题。
技术领域
本发明涉及计算机领域,具体涉及一种基于多机房实现的消息队列的消费方法及电子设备。
背景技术
消息队列用于将待传输的数据存储到队列中。其中,向队列中写入数据的业务端叫做消息生产端,从队列中读取数据的业务端叫做消息消费端。通过消息队列能够实现多个消息数据的有序存储,从而有利于实现消息的可靠传输。随着业务场景的日益复杂,很多业务系统中包含多个机房,在多机房的实现方案中,为了确保消息消费端能够可靠消费,需要将消息生产端与消息消费端部署在同一个机房内。
但是,在实际业务场景中,消息生产端可能会发生机房切换,例如,某一消息生产端从机房A切换到机房B。在切换操作执行之前,该消息生产端生产的消息队列位于机房A中,在切换操作执行之后,该消息生产端生产的消息队列位于机房B中。相应地,在切换操作执行之前,该消息生产端所对应的消息消费端位于机房A;在切换操作执行之后,该消息生产端所对应的消息消费端也需要一同切换到机房B。
但是,在实现本发明的过程中,发明人发现现有技术中的上述方案至少存在下述缺陷:一方面,当消息生产端切换机房之后,消息消费端需要跟随消息生产端同步切换,从而导致操作繁琐;另一方面,消息消费端跟随消息生产端同步切换之后,将通过切换后的机房进行消费,然而,在实际情况中,由于生产操作与消费操作之间往往不同步,当消费操作滞后于生产操作时,将导致切换前的机房内仍遗留尚未消费的消息数据,从而导致数据遗失问题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的基于多机房实现的消息队列的消费方法及电子设备。
根据本发明的一个方面,提供了一种基于多机房实现的消息队列的消费方法,包括:
当多个机房中的任一机房接收到消息写入请求时,将所述消息写入请求中包含的消息数据写入与接收到所述消息写入请求的机房相对应的消息队列;
当多个机房中的任一机房接收到消息消费请求时,获取所述消息消费请求中包含的待消费的消息队列的队列标识,将多个机房中与所述队列标识相匹配的消息队列所在的机房确定为目标机房,从所述目标机房中获取与所述队列标识相对应的消息队列的消息数据进行消费。
根据本发明的另一方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行以下操作:
当多个机房中的任一机房接收到消息写入请求时,将所述消息写入请求中包含的消息数据写入与接收到所述消息写入请求的机房相对应的消息队列;
当多个机房中的任一机房接收到消息消费请求时,获取所述消息消费请求中包含的待消费的消息队列的队列标识,将多个机房中与所述队列标识相匹配的消息队列所在的机房确定为目标机房,从所述目标机房中获取与所述队列标识相对应的消息队列的消息数据进行消费。
根据本发明的又一方面,提供了一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使所述处理器执行以下操作:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于掌阅科技股份有限公司,未经掌阅科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010906376.4/2.html,转载请声明来源钻瓜专利网。