一种主节点的切换方法以及计算机可读存储介质技术

技术编号:28492685 阅读:13 留言:0更新日期:2021-05-19 22:19
本申请适用于中间件的技术领域,提供了一种主节点的切换方法以及计算机可读存储介质,包括:接收仲裁节点发送的仲裁请求;根据所述仲裁请求,向所述仲裁节点发送当前竞选请求;接收所述仲裁节点根据所述当前竞选请求返回的第一回复报文;第一回复报文用于表示所述第一副节点成为当前主节点;向所述其他副节点发送通知报文;所述通知报文用于表示所述第一幅节点为当前主节点。上述方案,副节点仅需与仲裁节点交互,即可竞选当前主节点,并在选举成功后,通知其他副节点,以完成主节点切换的整个流程,避免了传统技术中不同副节点之间的繁杂交互,提高了切换主节点的效率。提高了切换主节点的效率。提高了切换主节点的效率。

【技术实现步骤摘要】
一种主节点的切换方法以及计算机可读存储介质


[0001]本申请属于中间件的
,尤其涉及一种主节点的切换方法以及计算机可读存储介质。

技术介绍

[0002]消息中间件是分布式系统中一个子系统,关注于数据的发送和接收,利用高效可靠的异步消息传递机制对分布式系统中的其余各个子系统进行集成。
[0003]随着消息中间件应用范围的扩大,基于消息中间件通信的第三方系统越来越多。为了保证系统的可用性,消息中间件一般都部署为集群方式,避免主节点退出而导致系统无法运行。其中,传统技术对于主节点切换的处理方式为:通过各个节点之间共同商讨当前主节点。然而每个副节点之间的交互过程较为复杂,导致切换主节点的效率较低。

技术实现思路

[0004]有鉴于此,本申请实施例提供了一种主节点的切换方法、装置、第一设备、第二设备、第三设备、消息中间件系统以及计算机可读存储介质,可以解决每个副节点之间的交互过程较为复杂,导致切换主节点的效率较低的技术问题。
[0005]本申请实施例的第一方面提供了一种主节点的切换方法,所述切换方法应用于第一设备,所述第一设备为第一副节点,所述方法包括:
[0006]接收仲裁节点发送的仲裁请求;所述仲裁请求是仲裁节点在检测到历史主节点退出后,向多个副节点发送的请求;
[0007]根据所述仲裁请求,向所述仲裁节点发送当前竞选请求;所述当前竞选请求用于竞选当前主节点;
[0008]接收所述仲裁节点根据所述当前竞选请求返回的第一回复报文;第一回复报文用于表示所述第一副节点成为当前主节点;
[0009]向所述其他副节点发送通知报文;所述通知报文用于表示所述第一幅节点为当前主节点;所述其他副节点是指所有副节点中除了所述第一副节点以外的副节点。
[0010]本申请实施例的第二方面提供了一种主节点的切换方法,所述切换方法应用于第二设备,所述第二设备为仲裁节点,所述方法包括:
[0011]当检测到历史主节点退出后,向多个副节点发送的仲裁请求;
[0012]接收所述多个副节点根据所述仲裁请求返回的当前竞选请求;
[0013]根据预设条件在所述多个副节点中选择当前主节点;所述预设条件包括分布式锁;
[0014]向所述当前主节点发送第一回复报文;第一回复报文用于表示所述第一副节点成为当前主节点。
[0015]本申请实施例的第三方面提供了一种主节点的切换方法,所述切换方法应用于第三设备,所述第三设备为其他副节点,所述其他副节点是指所有副节点中除了第一副节点
以外的副节点,所述方法包括:
[0016]接收当前主设备发送的通知报文;所述通知报文用于表示所述第一幅节点为当前主节点;所述通知报文是其他副节点与第一副节点通过仲裁节点共同竞争主节点后,第一副节点成功竞选为当前主节点后发送的报文;
[0017]根据所述通知报文,确定第一副节点为当前主节点。
[0018]本申请实施例的第四方面提供了一种主节点的切换装置,所述装置包括:
[0019]第一接收组件,用于接收仲裁节点发送的仲裁请求;所述仲裁请求是仲裁节点在检测到历史主节点退出后,向多个副节点发送的请求;
[0020]第一发送组件,用于根据所述仲裁请求,向所述仲裁节点发送当前竞选请求;所述当前竞选请求用于竞选当前主节点;
[0021]第二接收组件,用于接收所述仲裁节点根据所述当前竞选请求返回的第一回复报文;第一回复报文用于表示所述第一副节点成为当前主节点;
[0022]第一同步组件,用于向所述其他副节点发送通知报文;所述通知报文用于表示所述第一幅节点为当前主节点;所述其他副节点是指所有副节点中除了所述第一副节点以外的副节点。
[0023]本申请实施例的第五方面提供了一种主节点的切换装置,所述装置包括:
[0024]第二发送组件,用于当检测到历史主节点退出后,向多个副节点发送的仲裁请求;
[0025]第三接收组件,用于接收所述多个副节点根据所述仲裁请求返回的当前竞选请求;
[0026]选择组件,用于根据预设条件在所述多个副节点中选择当前主节点;所述预设条件包括分布式锁;
[0027]第三发送组件,用于向所述当前主节点发送第一回复报文;第一回复报文用于表示所述第一副节点成为当前主节点。
[0028]本申请实施例的第六方面提供了一种主节点的切换装置,所述装置包括:
[0029]第二同步组件,用于接收当前主设备发送的通知报文;所述通知报文用于表示所述第一幅节点为当前主节点;所述通知报文是其他副节点与第一副节点通过仲裁节点共同竞争主节点后,第一副节点成功竞选为当前主节点后发送的报文;
[0030]确认组件,用于根据所述通知报文,确定第一副节点为当前主节点。
[0031]本申请实施例的第七方面提供了一种第一设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述方法的步骤。
[0032]本申请实施例的第八方面提供了一种第二设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第二方面所述方法的步骤。
[0033]本申请实施例的第九方面提供了一种第三设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第三方面所述方法的步骤。
[0034]本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面、第二方面以
及第三方面所述方法的步骤。
[0035]本申请实施例与现有技术相比存在的有益效果是:本申请通过,接收仲裁节点发送的仲裁请求;根据所述仲裁请求,向所述仲裁节点发送当前竞选请求;所述当前竞选请求用于竞选当前主节点;接收所述仲裁节点根据所述当前竞选请求返回的第一回复报文;第一回复报文用于表示所述第一副节点成为当前主节点;向所述其他副节点发送通知报文;所述通知报文用于表示所述第一幅节点为当前主节点;所述其他副节点是指所有副节点中除了所述第一副节点以外的副节点。上述方案,副节点仅需与仲裁节点交互,即可竞选当前主节点,并在选举成功后,通知其他副节点,以完成主节点切换的整个流程,避免了传统技术中不同副节点之间的繁杂交互,提高了切换主节点的效率。
附图说明
[0036]为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
[0037]图1示出了本申请提供的四端交互示意性流程图;
[0038]图2示出了本申请提供的一种主节点的切换方法的示意性流程图;
[0039]本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种主节点的切换方法,其特征在于,所述切换方法应用于第一设备,所述第一设备为第一副节点,所述切换方法包括:接收仲裁节点发送的仲裁请求;所述仲裁请求是仲裁节点在检测到历史主节点退出后,向多个副节点发送的请求;根据所述仲裁请求,向所述仲裁节点发送当前竞选请求;所述当前竞选请求用于竞选当前主节点;接收所述仲裁节点根据所述当前竞选请求返回的第一回复报文;第一回复报文用于表示所述第一副节点成为当前主节点;向所述其他副节点发送通知报文;所述通知报文用于表示所述第一幅节点为当前主节点;所述其他副节点是指所有副节点中除了所述第一副节点以外的副节点。2.如权利要求1所述切换方法,其特征在于,在所述向所述其他副节点发送通知报文之后,还包括:与所述其他副节点连接;将当前队列中的历史待发送消息进行排序,得到第一排序信息;将所述第一排序信息以及历史待发送消息的关键信息发送至所述其他副节点;所述关键信息包括源地址信息以及信息标识;接收所述其他副节点根据所述关键信息返回的第一同步消息;若根据所述第一同步消息确定同步成功,则向所述其他副节点发送第一推送报文;所述第一推送报文用于控制所述其他副节点向目的终端发送所述历史待发送消息;向目的终端发送所述历史待发送消息。3.如权利要求2所述切换方法,其特征在于,所述切换方法,还包括:接收发布端发送的当前待发送消息;将所述当前待发送消息进行排序,得到第二排序信息;将所述第二排序信息以及所述当前待发送消息的关键信息发送至其他副节点;所述关键信息包括源地址信息以及信息标识;接收所述其他副节点根据所述第二排序信息以及所述关键信息返回的第二同步消息;若根据所述第二同步消息确定同步成功,则向所述其他副节点发送第二推送报文;所述第二推送报文用于控制所述其他副节点向目的终端发送当前待发送消息;向目的终端发送所述当前待发送消息。4.一种主节点的切换方法,其特征在于,所述切换方法应用于第二设备,所述第二设备为仲裁节点,所述切换方法包括:当检测到历史主节点退出后,向多个副节点发送的仲裁请求;接收所述多个副节点根据所述仲裁请求返回的当前竞选请求;根据预设条件在所述多个副节点中选择当前主节点;所述预设条件包括分布式锁;向所述当前主节点发送第一回复报文;第一回复报文用于表示所述第一副节点成为当前主节点。5.如权利要求4所述切换方法,其特征在于,在所述当检测到历史主节点退出后,向多个副节点发送的仲裁请求之前,还包括:接收所有节点发送的历史竞选请求;所述所有节点包括历史主节点以及副节点;
根...

【专利技术属性】
技术研发人员:胡龙朱木朱昭颖
申请(专利权)人:深圳市金证科技股份有限公司
类型:发明
国别省市:

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

1