CN112860787A - 分布式主从系统中主节点的切换方法、主节点设备和存储介质 - Google Patents
分布式主从系统中主节点的切换方法、主节点设备和存储介质 Download PDFInfo
- Publication number
- CN112860787A CN112860787A CN201911185476.6A CN201911185476A CN112860787A CN 112860787 A CN112860787 A CN 112860787A CN 201911185476 A CN201911185476 A CN 201911185476A CN 112860787 A CN112860787 A CN 112860787A
- Authority
- CN
- China
- Prior art keywords
- master
- coordination server
- directory
- node
- master node
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 238000012217 deletion Methods 0.000 claims abstract description 39
- 230000037430 deletion Effects 0.000 claims abstract description 39
- 238000012544 monitoring process Methods 0.000 claims abstract description 26
- 238000004590 computer program Methods 0.000 claims description 7
- 238000012545 processing Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 3
- 230000002085 persistent effect Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明提供了一种分布式主从系统中主节点的切换方法、主节点设备和存储介质。该分布式主从系统中主节点的切换方法应用于分布式主从系统中的主节点;分布式主从系统还包括协调服务器;该切换方法包括:向协调服务器发送临时目录的创建请求以供协调服务器根据创建请求创建对应的临时目录;当接收到协调服务器反馈的目录创建成功信息后,与协调服务器维持第一预定时长长间隔的心跳;协调服务器用于监测到心跳停止更新时,删除临时目录;当未接收到目录创建成功信息后,监测是否存在协调服务器广播的对临时目录的删除信息;当监测到存在删除信息时,执行向协调服务器发送临时目录的创建请求。通过本发明,能够实现主节点的及时切换。
Description
技术领域
本发明涉及分布式主从系统技术领域,尤其涉及一种分布式主从系统中主节点的切换方法、主节点设备和存储介质。
背景技术
分布式主从系统包括主节点和多个从节点,用户通过界面提交任务到分布式主从系统后,主节点接收任务,并将任务分配至从节点执行,因此,分布式主从系统展现给用户的是一个统一的整体,用户无需关注系统内部主节点和从节点的工作流程,同时,由于分布式主从系统可以把任务分散到众多的从节点上,单个从节点故障时不影响其他从节点的正常运行,因而分布式主从系统的可靠性较高。
但是,当主节点发生故障时,分布式主从系统无法正常接收并分发任务至从节点。
发明内容
本发明的目的是提供一种分布式主从系统中主节点的切换方法、主节点设备和存储介质,用于解决现有技术分布式主从系统中主节点发生故障时,无法正常接收并分发任务至从节点的技术问题。
一方面,为实现上述目的,本发明提供了一种分布式主从系统中主节点的切换方法。
该分布式主从系统中主节点的切换方法应用于分布式主从系统中的主节点;分布式主从系统还包括协调服务器;该切换方法包括:向协调服务器发送临时目录的创建请求以供协调服务器根据创建请求创建对应的临时目录;当接收到协调服务器反馈的目录创建成功信息后,与协调服务器维持第一预定时长的间隔的心跳;协调服务器用于监测到心跳停止更新时,删除临时目录;当未接收到目录创建成功信息后,监测是否存在协调服务器广播的对临时目录的删除信息;当监测到存在删除信息时,执行向协调服务器发送临时目录的创建请求。
进一步地,协调服务器通过目录状态接口广播删除信息,监测是否存在协调服务器广播的对临时目录的删除信息包括:通过调用目录状态接口监测是否存在删除信息。
进一步地,协调服务器还用于在创建临时目录之后,将临时目录对应的主节点的信息写入永久目录,切换方法还包括:当接收到协调服务器反馈的目录创建成功信息后,读取永久目录,并查找被当前工作的主节点替换的发生故障的历史主节点的信息;关闭历史主节点。
进一步地,关闭历史主节点包括:远程调用历史主节点操作系统的命令,以关闭历史主节点。
进一步地,切换方法还包括:在关闭历史主节点的第二预定时长后,启动历史主节点。
进一步地,切换方法还包括:当接收到协调服务器反馈的目录创建成功信息后,获取并加载数据库中的数据;每间隔第三预定时长,将内存中的数据写入数据库。
进一步地,将内存中的数据写入数据库包括:利用内存中的数据全量覆盖数据库;或利用内存中的数据对数据库中的数据进行增量更新。
进一步地,在接收到协调服务器反馈的目录创建成功信息之后,且在获取并加载数据库中的数据之前,切换方法还包括:初始化所有内部组件。
另一方面,为实现上述目的,本发明还提供一种主节点设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行计算机程序时实现上述方法的步骤。
又一方面,为实现上述目的,本发明还提供计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法的步骤。
本发明提供的分布式主从系统中主节点的切换方法、主节点设备和存储介质,主节点向协调服务器发送临时目录的创建请求,使得协调服务器根据创建请求创建主节点对应的临时目录,当主节点接收到协调服务器反馈的目录创建成功信息后,该主节点成为能够接收并分配任务的工作主节点,与协调服务器维持第一预设时长的间隔的心跳,当主节点未接收到该创建成功信息后,该主节点为冗余主节点。其中,协调服务器用于在监测到工作主节点与协调服务器维持的心跳停止更新时,删除临时目录,并广播对临时目录的删除信息,作为冗余主节点,其监测是否存在此删除信息,当监测到存在此删除信息时,执行向协调服务器发送临时目录的创建请求,因此,当工作主节点发生故障时,无法与协调服务器维持上述心跳,使得心跳停止更新,此时协调服务器删除临时目录并进行广播,冗余主节点检测到临时目录的删除信息,也即监测到工作主节点发生故障,此时向协调服务器发送临时目录的创建请求,使得协调服务器根据新的创建请求创建对应新的临时目录,成功在协调服务器上创建临时目录的主节点代替前述工作主节点成为新的工作主节点,实现了主节点故障时的及时感知和切换。
附图说明
图1为本发明实施例一提供的一种分布式主从系统中主节点的切换方法的流程图;
图2为本发明实施例一提供的另一种分布式主从系统中主节点的切换方法的流程图;
图3为本发明实施例一提供的又一种分布式主从系统中主节点的切换方法的流程图;
图4为本发明实施例二提供的分布式主从系统中主节点的切换装置的框图;
图5为本发明实施例三提供的主节点设备的硬件结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供了一种分布式主从系统中主节点的切换方法、主节点设备和存储介质。在该分布式主从系统中,主节点请求在协调服务器上创建临时目录,协调服务器能够从发送临时目录创建请求的主节点中选取主节点,创建该主节点对应的临时目录,当主节点接收到协调服务器反馈的目录创建成功信息,也即该主节点在协调服务器上被成功创建临时目录,成为工作主节点而处于active状态时,与协调服务器维持第一预定时长的间隔的心跳,当该心跳停止更新时,表征该工作主节点发生故障,协调服务器用于监测到心跳停止更新,将临时目录删除,并广播对临时目录的删除信息;当主节点未接收到协调服务器反馈的目录创建成功信息,也即该主节点在协调服务器上没有被成功创建临时目录,成为冗余主节点而处于standby状态时,监测是否存在协调服务器广播的对临时目录的删除信息,当监测到该删除信息时,也即监测到当前的工作主节点发生故障,则执行向协调服务器发送临时目录的创建请求的步骤,以使协调服务器根据此创建请求创建新的临时目录,成功在协调服务器上创建临时目录的主节点代替前述被删除临时目录的工作主节点,成为新的工作主节点,实现了主节点故障时的及时感知和切换。
从中可以看出,在本申请提供的分布式主从系统中主节点的切换方法中,主节点通过向协调服务器发送临时目录的创建请求来请求成为工作主节点,当协调服务器为其创建对应的临时目录,该主节点请求成功,成为工作主节点,当协调服务器没有为其创建对应的临时目录,该主节点请求失败,成为冗余主节点。工作主节点执行接收任务以及分配任务等步骤,冗余主节点通过监测是否存在协调服务器广播的对临时目录的删除信息来监测工作主节点的状态,因此,在工作主节点发生故障时,冗余主节点能够及时将其替换而成为新的工作主节点,保证分布式主从系统中接收及分配任务的稳定性,进一步提高分布式主从系统的可靠性。
关于本发明提供的分布式主从系统中主节点的切换方法、主节点设备和存储介质的具体实施例,将在下文中详细描述。
实施例一
本发明实施例提供了一种分布式主从系统中主节点的切换方法,该分布式主从系统包括协调服务器、多个主节点和多个从节点,本实施例提供的切换方法的执行主体为主节点。通过该实施例提供的分布式主从系统中主节点的切换方法,当处于active状态的工作主节点发生故障时,处于standby状态的冗余主节点能够及时感知并由standby状态转换为active状态,实现了分布式主从系统中主节点的切换,具体地,该实施例提供的分布式主从系统中主节点的切换方法包括如下的步骤S101至步骤S103。
步骤S101:向协调服务器发送临时目录的创建请求以供协调服务器根据创建请求创建对应的临时目录。
在分布式主从系统中,多个主节点在启动后处于standby状态,均可请求在协调服务器上创建临时目录。
当多个主节点向协调服务器发送临时目录的创建请求时,协调服务器能够从多个主节点中选举一个主节点为其创建临时目录,具体地,协调服务器可按照分布式一致性协议的Paxos算法,从多个主节点中选举一个主节点为其创建临时目录,其中,分布式一致性协议的Paxos算法属于现有技术中的公知常识,该处不再赘述。可选地,该协调服务器可以为zookeeper服务器。
其中,分布式主从系统中的主节点成功创建临时目录后,由standby状态切换为active状态,未成功创建临时目录的主节点仍处于standby状态。在分布式主从系统中,处于active状态的主节点能够接收任务,并将任务分配至从节点执行。可选地,处于standby状态的主节点同时可以作为从节点,以接收并执行任务,提高分布式主从系统中资源的利用率。可选地,临时目录包括主节点的ip地址和端口等信息。
步骤S102:当接收到协调服务器反馈的目录创建成功信息后,与协调服务器维持第一预定时长的间隔的心跳。
其中,协调服务器用于监测到心跳停止更新时,删除临时目录。
具体地,一主节点向协调服务器发送临时目录的创建请求,当协调服务器为该主节点创建临时目录后,协调服务器向主节点反馈目录创建成功信息,主节点接收到该目录创建成功信息,成为处于active状态的工作主节点,与协调服务器维持第一预定时长间隔的心跳,也即,每间隔第一预定时长,该工作主节点向协调服务器发送一次心跳信息,协调服务器利用接收到的心跳信息更新已有的心跳信息,实现心跳每间隔第一预定时长间隔的更新,例如,第一预定时长为30s。其中,该心跳的持续更新表征该工作主节点的工作状态正常,当心跳停止更新,表征该工作主节点的发生故障。
协调服务器用于监测该心跳的更新情况,当监测到该心跳停止更新时,删除该工作主节点对应的临时目录,并广播对临时目录的删除信息。
步骤S103:当未接收到目录创建成功信息后,监测是否存在协调服务器广播的对临时目录的删除信息,当监测到存在删除信息时,执行向协调服务器发送临时目录的创建请求。
具体地,一主节点向协调服务器发送临时目录的创建请求,当协调服务器没有为该主节点创建临时目录,不会向主节点反馈目录创建成功信息,主节点在预定时长内没有接收到该目录创建成功信息,成为保持active状态的冗余主节点;或者,协调服务器向主节点反馈目录创建失败信息,主节点接收到该目录创建失败信息,成为保持active状态的冗余主节点。冗余主节点监测是否存在协调服务器广播的对临时目录的删除信息,以监测当前工作主节点的工作状态,当监测到存在删除信息时,也即监测到当前工作主节点发生故障时,向协调服务器发送临时目录的创建请求。其中,多个冗余主节点监测到存在删除信息,向协调服务器发送临时目录的创建请求时,协调服务器再一次从多个冗余主节点中选举一个主节点为其创建临时目录,成为工作主节点。
采用该实施例提供的分布式主从系统中主节点的切换方法,主节点向协调服务器发送注册请求,使得协调服务器根据注册请求创建主节点对应的临时目录,当主节点接收到协调服务器反馈的目录创建成功信息后,该主节点成为能够接收并分配任务的工作主节点,与协调服务器维持第一预设时长间隔的心跳,当主节点未接收到该创建成功信息后,该主节点为冗余主节点。其中,协调服务器用于在监测到工作主节点与协调服务器维持的心跳停止更新时,删除临时目录,并广播对临时目录的删除信息,作为冗余主节点,其监测是否存在此删除信息,当监测到存在此删除信息时,执行向协调服务器发送临时目录的创建请求,因此,当工作主节点发生故障时,无法与协调服务器维持上述心跳,使得心跳停止更新,此时协调服务器删除临时目录并进行广播,冗余主节点检测到临时目录的删除信息,也即监测到工作主节点发生故障,此时向协调服务器发送临时目录的创建请求,使得协调服务器根据新的创建请求创建对应新的临时目录,成功在协调服务器上创建临时目录的主节点代替前述工作主节点成为新的工作主节点,实现了主节点故障时的及时感知和切换。
可选地,在一种实施例中,协调服务器通过目录状态接口广播删除信息,监测是否存在协调服务器广播的对临时目录的删除信息包括:通过调用目录状态接口监测是否存在删除信息。
具体而言,协调服务器提供目录状态接口,当协调服务器删除临时目录时,通过该目录状态接口可将删除信息进行广播,调用该目录状态接口的对象便可接收到该删除信息。当主节点未接收到目录创建成功信息后,也即主节点处于standby状态,调用该目录状态接口,通过调用目录状态接口监测是否存在删除信息。
采用该实施例提供的分布式主从系统中主节点的切换方法,冗余主节点通过调用协调服务器的目录状态接口,来监测是否存在临时目录的删除信息,以及实现对工作主节点工作状态的监测,一方面,协调服务器在广播该删除信息时,只有调用目录状态接口的冗余主节点才能接收到,避免该删除信息对分布式主从系统中其他对象的影响;另一方面,冗余主节点只需要执行调用协调服务器的目录状态接口的步骤,即可在工作主节点故障时及时获得表征工作主节点发生故障的临时目录删除信息,无需冗余主节点与工作主节点交互,减少工作主节点的资源开销。
图2为本发明实施例一提供的另一种分布式主从系统中主节点的切换方法的流程图,可选地,在一种实施例中,协调服务器还用于在创建临时目录之后,将临时目录对应的主节点的信息写入永久目录,如图2所示,该切换方法还包括:步骤S104:当接收到协调服务器反馈的目录创建成功信息后,读取永久目录,并查找被当前工作的主节点替换的发生故障的历史主节点的信息;关闭历史主节点。
其中,需要说明的是,该步骤S104可以在步骤S102之前执行,也可以在步骤S102中,两次与协调服务器维持心跳之间执行。
具体而言,协调服务器上维持一个永久目录,每次从多个主节点中选举一个主节点为其创建临时目录后,均将选举出的主节点的信息按顺序写入该永久目录,因而该永久目录包括所有成功创建临时目录的主节点的信息,也即所有处于工作主节点的信息,该工作主节点的信息包括主节点的IP地址。一个主节点被成功创建临时目录后,成为当前工作主节点,其读取协调服务器上的永久目录,能够获得历史上前一个工作主节点的信息,也即获得当前工作主节点所替代的发生故障的历史主节点的信息,此时,当前工作主节点将历史主节点关闭。
第一主节点、第二主节点为分布式主从系统中的任意两个主节点,且第一主节点处于active状态时,第二主节点处于standby状态。以该第一主节点和第二主节点为例,当第一主节点处于“假死”的状态,例如网络问题或进程GC等,导致第一主节点无法与协调服务器保持心跳,协调服务器将第一主节点的临时目录删除,并广播对临时目录的删除信息,第二主节点监测到该删除信息后,由standby状态转换为active状态。
当第一主节点的网络问题改善,或者导致进程GC的其他进程释放资源而使进程GC消失后,第一主节点的“假死”状态消除,回到active状态,此时,分布式主从系统中存在两个处于active状态的主节点,进而产生业务冲突。为了避免该业务冲突,在该实施例提供的分布式主从系统中主节点的切换方法中,
第二主节点成功创建临时目录后,也即处于active状态后,将第一主节点关闭,使得第一主节点强制下线,避免了由于第一主节点“假死”而造成的业务冲突。
可选地,在一种实施例中,关闭历史主节点包括:远程调用历史主节点操作系统的命令,以关闭历史主节点。
具体而言,可设置分布式主从系统中各主节点之间具有远程操作的权限,永久目录中主节点的信息包括主节点的IP地址。当前工作主节点在关闭历史主节点时,读取协调服务器上的永久目录,得到历史主节点的IP地址,然后通过该IP地址,调用历史主节点操作系统的关机命令,实现对历史主节点的关闭。
可选地,在一种实施例中,切换方法还包括:在关闭历史主节点的第二预定时长后,启动历史主节点。
具体而言,历史主节点被当前工作主节点关闭后,历史主节点处于下线的状态,也即处于资源闲置的状态。为了避免资源闲置,当前工作主节点关闭历史主节点当前工作第二预定时长后,重新将历史主节点启动。其中,历史主节点启动后,可以处于standby状态,和/或作为从节点接收任务。
很多情况下,历史主节点的故障可通过重启而解决,因此,采用该实施例提供的分布式主从系统中主节点的切换方法,能够进一步提升资源利用率。
图3为本发明实施例一提供的又一种分布式主从系统中主节点的切换方法的流程图,可选地,在一种实施例中,如图3所示,该切换方法还包括:步骤S105:当接收到协调服务器反馈的目录创建成功信息后,获取并加载数据库中的数据;步骤S106:每间隔第三预定时长,将内存中的数据写入数据库。
其中,需要说明的是,该步骤S105可以在步骤S102之前执行,也可以在步骤S102中,两次与协调服务器维持心跳之间执行;该步骤S106和步骤S102中与协调服务器维持心跳的步骤可交替执行。
具体而言,考虑到主节点接收和分配任务的性能,主节点处于active状态时,本身有大量的异步操作,无论用户提交的任务还是从节点上报来的任务状态,均会临时存储在内存里,一旦该主节点宕机,这些内存里面的数据均会丢失,从而导致用户提交的任务丢失,和/或从节点更新的状态数据丢失。为了防止上述数据丢失的问题,在该实施例提供的分布式主从系统中主节点的切换方法中,主节点接收到协调服务器反馈的目录创建成功信息后,处于active状态时,获取并加载数据库中的数据,将历史主节点添加在数据库中的数据加载,且每间隔第三预定时长,将内存中的数据写入数据库,以使当前工作主节点被替代时,新的主节点能够在数据库中加载信息,其中,数据库可以采用redis数据库,第三预定时长可以为3s。
采用该实施例提供的分布式主从系统中主节点的切换方法,能够提升分布式主从系统的可靠性。
可选地,在一种实施例中,将内存中的数据写入数据库包括:利用内存中的数据全量覆盖数据库;或利用内存中的数据对数据库中的数据进行增量更新。
具体而言,一种实施方式中,当前工作主节点每间隔第三预定时长,利用当前内存中的数据将数据库中上一次写入的内存数据全部替换,向数据库写入数据时逻辑简单,同时又减少数据库中存储的数据量。另一种实施方式中,当前工作主节点每间隔第三预定时长,利用当前内存中的数据与数据库中的数据进行比对,将具有差异的数据写入数据库,保证数据库中数据的全面性和不重复性。
可选地,在一种实施例中,在接收到协调服务器反馈的目录创建成功信息之后,且在获取并加载数据库中的数据之前,切换方法还包括:初始化所有内部组件。
具体而言,工作主节点的内部组件包括接收用户提交任务的组件,以及接收从节点任务状态的组件等,在接收到协调服务器反馈的目录创建成功信息之后,获取并加载数据库中的数据之前,首先对各个内部组件进行初始化操作,初始化完成后,保证各个内部组件均处于初始状态,然后再获取并加载数据库中的数据,避免各个内部组件处于非初始状态的中间状态时,与加载的数据库中的数据产生冲突,也避免初始化内部组件时使加载的数据库中的数据丢失。
实施例二
对应于上述实施例一,本发明实施例二提供了一种分布式主从系统中主节点的切换装置,部分技术特征的详细描述和技术效果,可参照上述实施例一,该处不再赘述。图4为本发明实施例二提供的分布式主从系统中主节点的切换装置的框图,该分布式主从系统还包括协调服务器,该切换装置设置于主节点中,如图4所示,该切换装置包括:发送模块201、第一处理模块202和第二处理模块203。
其中,发送模块201用于向协调服务器发送临时目录的创建请求以供协调服务器根据创建请求创建对应的临时目录;第一处理模块202用于当接收到协调服务器反馈的目录创建成功信息后,与协调服务器维持第一预定时长的间隔的心跳;协调服务器用于监测到心跳停止更新时,删除临时目录;第二处理模块203用于当未接收到目录创建成功信息后,监测是否存在协调服务器广播的对临时目录的删除信息,其中,发送模块201还用于当监测到存在删除信息时,执行向协调服务器发送临时目录的创建请求。
可选地,在一种实施例中,协调服务器通过目录状态接口广播删除信息,第二处理模块203在监测是否存在协调服务器广播的对临时目录的删除信息时,通过调用目录状态接口监测是否存在删除信息。
可选地,在一种实施例中,协调服务器还用于在创建临时目录之后,将临时目录对应的主节点的信息写入永久目录,第一处理模块202还用于当接收到协调服务器反馈的目录创建成功信息后,读取永久目录,并查找被当前工作的主节点替换的发生故障的历史主节点的信息,关闭历史主节点。
可选地,在一种实施例中,第一处理模块202在关闭历史主节点时,具体执行的步骤包括:远程调用历史主节点操作系统的命令,以关闭历史主节点。
可选地,在一种实施例中,第一处理模块202还用于在关闭历史主节点的第二预定时长后,启动历史主节点。
可选地,在一种实施例中,第一处理模块202还用于当接收到协调服务器反馈的目录创建成功信息后,获取并加载数据库中的数据,每间隔第三预定时长,将内存中的数据写入数据库。
可选地,在一种实施例中,第一处理模块202将内存中的数据写入数据库时,具体执行的步骤包括:利用内存中的数据全量覆盖数据库;或利用内存中的数据对数据库中的数据进行增量更新。
可选地,在一种实施例中,第一处理模块202还用于在接收到协调服务器反馈的目录创建成功信息之后,在获取并加载数据库中的数据之前,初始化所有内部组件。
实施例三
本实施例还提供一种主节点设备,如可以执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图5所示,本实施例的主节点设备01至少包括但不限于:可通过系统总线相互通信连接的存储器011、处理器012,如图3所示。需要指出的是,图5仅示出了具有组件存储器011和处理器012的主节点设备01,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,存储器011(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器011可以是主节点设备01的内部存储单元,例如该主节点设备01的硬盘或内存。在另一些实施例中,存储器011也可以是主节点设备01的外部存储设备,例如该主节点设备01上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器011还可以既包括主节点设备01的内部存储单元也包括其外部存储设备。本实施例中,存储器011通常用于存储安装于主节点设备01的操作系统和各类应用软件,例如实施例二的分布式主从系统中主节点的切换装置的程序代码等。此外,存储器011还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器012在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器012通常用于控制主节点设备01的总体操作。本实施例中,处理器012用于运行存储器011中存储的程序代码或者处理数据,例如分布式主从系统中主节点的切换方法等。
实施例四
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例的计算机可读存储介质用于存储分布式主从系统中主节点的切换装置,被处理器执行时实现实施例一的分布式主从系统中主节点的切换方法。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种分布式主从系统中主节点的切换方法,其特征在于,应用于所述分布式主从系统中的主节点;所述分布式主从系统还包括协调服务器;所述切换方法包括:
向所述协调服务器发送临时目录的创建请求以供所述协调服务器根据所述创建请求创建对应的临时目录;
当接收到所述协调服务器反馈的目录创建成功信息后,与所述协调服务器维持第一预定时长的间隔的心跳;所述协调服务器用于监测到所述心跳停止更新时,删除所述临时目录;
当未接收到所述目录创建成功信息后,监测是否存在所述协调服务器广播的对所述临时目录的删除信息;当监测到存在所述删除信息时,执行所述向所述协调服务器发送临时目录的创建请求。
2.根据权利要求1所述的分布式主从系统中主节点的切换方法,其特征在于,所述协调服务器通过目录状态接口广播所述删除信息,所述监测是否存在所述协调服务器广播的对所述临时目录的删除信息包括:
通过调用所述目录状态接口监测是否存在所述删除信息。
3.根据权利要求1所述的分布式主从系统中主节点的切换方法,其特征在于,所述协调服务器还用于在创建临时目录之后,将所述临时目录对应的主节点的信息写入永久目录,所述切换方法还包括:
当接收到所述协调服务器反馈的目录创建成功信息后,读取所述永久目录,并查找被当前工作的所述主节点替换的发生故障的历史主节点的信息;
关闭所述历史主节点。
4.根据权利要求3所述的分布式主从系统中主节点的切换方法,其特征在于,所述关闭所述历史主节点包括:
远程调用所述历史主节点操作系统的命令,以关闭所述历史主节点。
5.根据权利要求3所述的分布式主从系统中主节点的切换方法,其特征在于,所述切换方法还包括:
在关闭所述历史主节点的第二预定时长后,启动所述历史主节点。
6.根据权利要求1所述的分布式主从系统中主节点的切换方法,其特征在于,所述切换方法还包括:
当接收到所述协调服务器反馈的目录创建成功信息后,获取并加载数据库中的数据;
每间隔第三预定时长,将内存中的数据写入所述数据库。
7.根据权利要求6所述的分布式主从系统中主节点的切换方法,其特征在于,所述将内存中的数据写入所述数据库包括:
利用内存中的数据全量覆盖所述数据库;或
利用内存中的数据对所述数据库中的数据进行增量更新。
8.根据权利要求6所述的分布式主从系统中主节点的切换方法,其特征在于,在所述接收到所述协调服务器反馈的目录创建成功信息之后,且在所述获取并加载所述数据库中的数据之前,所述切换方法还包括:
初始化所有内部组件。
9.一种主节点设备,其特征在于,包括:存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1至8任一项所述方法的步骤。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至8任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911185476.6A CN112860787A (zh) | 2019-11-27 | 2019-11-27 | 分布式主从系统中主节点的切换方法、主节点设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911185476.6A CN112860787A (zh) | 2019-11-27 | 2019-11-27 | 分布式主从系统中主节点的切换方法、主节点设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112860787A true CN112860787A (zh) | 2021-05-28 |
Family
ID=75985072
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911185476.6A Pending CN112860787A (zh) | 2019-11-27 | 2019-11-27 | 分布式主从系统中主节点的切换方法、主节点设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112860787A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113660350A (zh) * | 2021-10-18 | 2021-11-16 | 恒生电子股份有限公司 | 分布式锁协调方法、装置、设备及存储介质 |
CN114090211A (zh) * | 2021-11-23 | 2022-02-25 | 中国银行股份有限公司 | 协调单任务主从程序的方法、装置和相关多服务器系统 |
CN114338370A (zh) * | 2022-01-10 | 2022-04-12 | 北京金山云网络技术有限公司 | Ambari的高可用方法、系统、装置、电子设备和存储介质 |
CN117633119A (zh) * | 2024-01-25 | 2024-03-01 | 平凯星辰(北京)科技有限公司 | 数据同步方法、数据同步系统的节点、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102122306A (zh) * | 2011-03-28 | 2011-07-13 | 中国人民解放军国防科学技术大学 | 一种数据处理方法及应用该方法的分布式文件系统 |
CN107168813A (zh) * | 2017-04-28 | 2017-09-15 | 平安科技(深圳)有限公司 | 任务处理方法及系统 |
CN107729126A (zh) * | 2016-08-12 | 2018-02-23 | 中国移动通信集团浙江有限公司 | 一种容器云的任务调度方法和装置 |
CN108604202A (zh) * | 2016-05-12 | 2018-09-28 | 华为技术有限公司 | 并行处理系统的工作节点重建 |
CN110417600A (zh) * | 2019-08-02 | 2019-11-05 | 秒针信息技术有限公司 | 分布式系统的节点切换方法、装置及计算机存储介质 |
-
2019
- 2019-11-27 CN CN201911185476.6A patent/CN112860787A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102122306A (zh) * | 2011-03-28 | 2011-07-13 | 中国人民解放军国防科学技术大学 | 一种数据处理方法及应用该方法的分布式文件系统 |
CN108604202A (zh) * | 2016-05-12 | 2018-09-28 | 华为技术有限公司 | 并行处理系统的工作节点重建 |
CN107729126A (zh) * | 2016-08-12 | 2018-02-23 | 中国移动通信集团浙江有限公司 | 一种容器云的任务调度方法和装置 |
CN107168813A (zh) * | 2017-04-28 | 2017-09-15 | 平安科技(深圳)有限公司 | 任务处理方法及系统 |
CN110417600A (zh) * | 2019-08-02 | 2019-11-05 | 秒针信息技术有限公司 | 分布式系统的节点切换方法、装置及计算机存储介质 |
Non-Patent Citations (1)
Title |
---|
冯战胜: "基于Zookeeper的分布式ICE中间件研究", 《计算机系统应用》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113660350A (zh) * | 2021-10-18 | 2021-11-16 | 恒生电子股份有限公司 | 分布式锁协调方法、装置、设备及存储介质 |
CN114090211A (zh) * | 2021-11-23 | 2022-02-25 | 中国银行股份有限公司 | 协调单任务主从程序的方法、装置和相关多服务器系统 |
CN114338370A (zh) * | 2022-01-10 | 2022-04-12 | 北京金山云网络技术有限公司 | Ambari的高可用方法、系统、装置、电子设备和存储介质 |
CN117633119A (zh) * | 2024-01-25 | 2024-03-01 | 平凯星辰(北京)科技有限公司 | 数据同步方法、数据同步系统的节点、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11809726B2 (en) | Distributed storage method and device | |
CN112860787A (zh) | 分布式主从系统中主节点的切换方法、主节点设备和存储介质 | |
CN112866314B (zh) | 分布式主从系统中从节点的切换方法、主节点设备和存储介质 | |
CN108170820B (zh) | 一种容器处理方法、控制服务器及分布式集群 | |
CN112860386A (zh) | 分布式主从系统中节点的切换方法 | |
CN109697112B (zh) | 分布式集约化一站式作业系统和实现方法 | |
CN106302709B (zh) | 一种网络文件管理的实现方法和系统 | |
CN109634638B (zh) | 一种集群软件升级方法、装置、设备及介质 | |
CN107819556B (zh) | 一种服务状态切换方法及装置 | |
CN112865992A (zh) | 分布式主从系统中主节点的切换方法、装置和计算机设备 | |
WO2013126046A1 (en) | Maintaining system firmware images remotely using a distribute file system protocol | |
CN112416542A (zh) | 分布式任务系统、管理方法、装置和计算机设备 | |
CN103647811A (zh) | 一种实现应用访问后台服务的方法和装置 | |
EP2416526B1 (en) | Task switching method, server node and cluster system | |
CN113946427A (zh) | 用于多操作系统的任务处理方法、处理器及存储介质 | |
CN117914675A (zh) | 一种分布式缓存系统的构建的方法及装置 | |
CN117155948A (zh) | 集群管理方法、装置、电子设备及存储介质 | |
CN111506388A (zh) | 容器性能探测方法、容器管理平台及计算机存储介质 | |
CN114860505B (zh) | 一种对象存储数据异步备份方法及系统 | |
CN114172903B (zh) | slurm调度系统的节点扩容方法、装置、设备和介质 | |
CN111124428A (zh) | 一种基于中创中间件的应用自动化发布方法和相关装置 | |
JP5317182B2 (ja) | Pos端末、モジュールアップデート方法およびモジュールアップデートプログラム | |
CN112217849A (zh) | Sd-wan系统中的任务调度方法、系统和计算机设备 | |
CN111756562B (zh) | 一种集群接管方法、系统及相关组件 | |
CN113806056B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210528 |