[发明专利]消息系统的主从切换方法、装置、电子设备及存储介质在审
| 申请号: | 201911268888.6 | 申请日: | 2019-12-11 |
| 公开(公告)号: | CN111064608A | 公开(公告)日: | 2020-04-24 |
| 发明(设计)人: | 冯浩;姜智慧 | 申请(专利权)人: | 北京奇艺世纪科技有限公司 |
| 主分类号: | H04L12/24 | 分类号: | H04L12/24;H04L12/26;H04L29/08 |
| 代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 莎日娜 |
| 地址: | 100080 北京市海淀*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 消息 系统 主从 切换 方法 装置 电子设备 存储 介质 | ||
本发明实施例提供了一种消息系统的主从切换方法、装置、电子设备及存储介质。其中方法包括:接收代理机发送的心跳消息,确定所述代理机是否发生异常,并在所述代理机发生异常后获取发生异常的代理机的标识;根据所述发生异常的代理机的标识,查询所述发生异常的代理机的角色;在所述发生异常的代理机的角色为主代理机时,查询与所述发生异常的代理机对应的目标从代理机;将所述目标从代理机的角色切换为主代理机,并在接收到所述目标从代理机发送的角色获取请求后,将切换后的角色返回至所述目标从代理机。本发明实施例能够避免消息系统的吞吐量降低,避免造成系统崩溃的现象。
技术领域
本发明涉及数据处理技术领域,特别是涉及消息系统的主从切换方法、装置、电子设备及存储介质。
背景技术
消息系统是一个消息订阅和发布的系统,消息系统中包括代理机(Broker)。将消息的发布表述为生产,将消息的订阅表述为消费,将中间的存储称作代理机。生产者将消息生产出来,发给消息系统的代理机进行存储,消费者需要消费消息时,就从代理机中取出所需的消息。
消息系统是解耦各系统通信的基础分布式中间件,它的稳定与可靠直接关系着企业相关各系统的正常运行。在互联网系统环境下,对各系统的容灾提出了更严格的要求,主从互备是容灾中常见的部署方式。消息系统采用master/slave(主/从)的部署方式,针对一台主代理机设置至少一台从代理机。正常服务时,消息的生产和消费都在主代理机上完成,从机进行消息的备份,从而提高集群的可用性。
但是,当主代理机发生异常无法提供服务时,虽然消费者可连接从代理机进行消息消费,但是生产者无法连接从代理机进行消息生产。因此生产者生产的消息将无法顺利存储至原有的主代理机上,从而导致消息系统的吞吐量降低,甚至在无法顺利存储的消息数量较大时造成系统崩溃。
发明内容
本发明实施例的目的在于提供一种消息系统的主从切换方法、装置、电子设备及存储介质,以避免在主代理机发生异常时,消息系统的吞吐量降低,甚至造成系统崩溃的现象。具体技术方案如下:
在本发明实施的第一方面,首先提供了一种消息系统的主从切换方法,所述消息系统中包括代理机,所述代理机的角色包括主代理机和从代理机,所述方法包括:
接收所述代理机发送的心跳消息,确定所述代理机是否发生异常,并在所述代理机发生异常后获取发生异常的代理机的标识;
根据所述发生异常的代理机的标识,查询所述发生异常的代理机的角色;
在所述发生异常的代理机的角色为主代理机时,查询与所述发生异常的代理机对应的目标从代理机;
将所述目标从代理机的角色切换为主代理机,并在接收到所述目标从代理机发送的角色获取请求后,将切换后的角色返回至所述目标从代理机。
可选地,所述方法还包括:定时从预设托管平台中获取所述代理机的标识与角色的映射关系,并将获取的映射关系保存至自身缓存中;所述托管平台中保存的所述代理机的标识与角色的映射关系允许外部修改。
可选地,所述托管平台包括分布式协调服务zookeeper和/或配置中心。
可选地,所述托管平台包括分布式协调服务zookeeper;所述查询与所述发生异常的代理机对应的目标从代理机,包括:从自身缓存的主代理机与从代理机的映射关系中,查询所述发生异常的代理机对应的从代理机;当查询到的从代理机为多个时,将查询到的从代理机的标识发送至所述zookeeper,以使所述zookeeper根据所述查询到的从代理机的标识通知各查询到的从代理机分别进行投票,并将得票数最多的从代理机作为所述目标从代理机;从所述zookeeper中获取与所述发生异常的代理机对应的目标从代理机。
可选地,所述方法还包括:预先将所述代理机的标识与角色的映射关系保存至自身缓存中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇艺世纪科技有限公司,未经北京奇艺世纪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911268888.6/2.html,转载请声明来源钻瓜专利网。





