CN115296982B - 基于数据库的节点切换方法、装置、电子设备及存储介质 - Google Patents

基于数据库的节点切换方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN115296982B
CN115296982B CN202211223963.9A CN202211223963A CN115296982B CN 115296982 B CN115296982 B CN 115296982B CN 202211223963 A CN202211223963 A CN 202211223963A CN 115296982 B CN115296982 B CN 115296982B
Authority
CN
China
Prior art keywords
node
candidate
switching
nodes
weight
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.)
Active
Application number
CN202211223963.9A
Other languages
English (en)
Other versions
CN115296982A (zh
Inventor
郎俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yunhe Enmo Beijing Information Technology Co ltd
Original Assignee
Yunhe Enmo Beijing Information Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yunhe Enmo Beijing Information Technology Co ltd filed Critical Yunhe Enmo Beijing Information Technology Co ltd
Priority to CN202211223963.9A priority Critical patent/CN115296982B/zh
Publication of CN115296982A publication Critical patent/CN115296982A/zh
Application granted granted Critical
Publication of CN115296982B publication Critical patent/CN115296982B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/203Failover techniques using migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提出的基于数据库的节点切换方法、装置、电子设备及存储介质,涉及通信技术领域。该方法包括:对故障切换期望时长和切换权重进行超时计算,得到候选节点的切换超时时长;根据切换权重和节点标记对候选节点进行筛选,得到候选主节点;候选主节点没有失败标记,候选主节点为当前提升的候选节点;对候选主节点进行主节点提升,并检测候选主节点的提升结果和当前提升耗时时长;若提升结果为第一结果,且当前提升耗时时长大于当前提升的候选节点的切换超时时长,则将当前提升的候选节点的节点标记修改为失败标记,并根据切换权重和节点标记对候选主节点进行切换。本申请实施例提高了节点切换的成功率。

Description

基于数据库的节点切换方法、装置、电子设备及存储介质
技术领域
本申请涉及通信技术领域,尤其涉及一种基于数据库的节点切换方法、装置、电子设备及存储介质。
背景技术
目前,在信息时代,几乎任何一个信息系统都需要数据库系统的支撑。数据库承担了信息的存储、处理工作。如果数据库不可用,很可能导致整个业务系统不可用。所以成熟的数据库一般会有一种甚至多种高可用方案来避免单点故障,如果某个节点不可用,其他节点可以接管该节点的工作,保证服务的可用性。相关技术中,若集群中的主节点出现故障,则需从候选节点中选择一个候选主节点。当某个从节点被选为候选主节点后,可能因为一些原因(比如在提升过程中出现故障)无法成功提升为目标主节点,则导致集群一直不可用。因此,如何提供一种基于数据库的节点切换方法,提高节点切换的成功率,成为了亟待解决的技术问题。
发明内容
本申请实施例的主要目的在于提出一种基于数据库的节点切换方法、装置、电子设备及存储介质,能够提高节点切换的成功率。
为实现上述目的,本申请实施例的第一方面提出了一种基于数据库的节点切换方法,所述方法包括:
获取配置信息;所述配置信息包括故障切换期望时长、每一个候选节点的切换权重和每一个候选节点的节点标记;所述节点标记包括失败标记;
对所述故障切换期望时长和所述切换权重进行超时计算,得到所述候选节点的切换超时时长;
根据所述切换权重和所述节点标记对所述候选节点进行筛选,得到候选主节点;所述候选主节点没有所述失败标记,所述候选主节点为当前提升的所述候选节点;
对所述候选主节点进行主节点提升,并检测所述候选主节点的提升结果和当前提升耗时时长;其中,所述提升结果包括第一结果,所述第一结果用于表示所述候选主节点提升为目标主节点失败;
若所述提升结果为所述第一结果,且所述当前提升耗时时长大于当前提升的所述候选节点的所述切换超时时长,则将当前提升的所述候选节点的所述节点标记修改为所述失败标记,并根据所述切换权重和所述节点标记对所述候选主节点进行切换。
在一些实施例,所述根据所述切换权重和所述节点标记对所述候选节点进行筛选,得到候选主节点,包括:
根据所述切换权重对所述候选节点进行优先级排序,得到节点优先级;
按照所述节点优先级从所述候选节点筛选出选定节点,并对所述选定节点的所述节点标记进行检测;
若所述节点标记为所述失败标记,则按照所述节点优先级对所述选定节点进行切换;
若所述节点标记不为失败标记,则将所述选定节点作为候选主节点。
在一些实施例,所述根据所述切换权重和所述节点标记对所述候选节点进行筛选,得到候选主节点,还包括:
将所述节点标记为所述失败标记的所述候选节点删除;
根据所述切换权重对没有所述失败标记的所述候选节点进行优先级排序,得到节点优先级;
按照所述节点优先级对没有所述失败标记的所述候选节点进行筛选,得到候选主节点。
在一些实施例,在所述根据所述节点标记对至少两个所述候选节点进行筛选,得到候选主节点之前,所述方法还包括:
获取每一所述候选节点的节点状态;若所述节点状态为主状态和/或不健康状态,则将所述候选节点删除;
和/或,
将所述切换权重为零的所述候选节点删除。
在一些实施例,所述对所述故障切换期望时长和所述切换权重进行超时计算,得到所述候选节点的切换超时时长,包括:
对至少一个所述候选节点的所述切换权重进行求和,得到求和结果;
根据所述候选节点的所述切换权重与所述求和结果的比值得到时长占比;
根据所述时长占比和所述故障切换期望时长的比值得到所述候选节点的切换超时时长。
在一些实施例,在所述根据至少一个所述候选节点的所述切换权重的总和得到求和结果之前,所述方法还包括:
根据预设的重要性系数对所述切换权重进行更新;所述重要性系数用于表示所述切换权重对所述切换超时时长的影响;
其中,获取所述重要性系数,包括:
获取服务连续性信息和服务质量信息;
基于所述服务连续性信息和所述服务质量信息设置所述重要性系数。
在一些实施例,根据预设的计算公式对所述故障切换期望时长和所述切换权重进行超时计算,所述计算公式包括:
Figure 519686DEST_PATH_IMAGE001
其中,
Figure 598500DEST_PATH_IMAGE002
是第i个所述候选节点的切换超时时长,
Figure 522244DEST_PATH_IMAGE003
是第i个所述候选节点的切换权 重,T为所述故障切换期望时长,a是所述重要性系数。
为实现上述目的,本申请实施例的第二方面提出了一种基于数据库的节点切换装置,所述装置包括:
信息获取模块,用于获取配置信息;所述配置信息包括故障切换期望时长、每一个候选节点的切换权重和每一个候选节点的节点标记;所述节点标记包括失败标记;
时长计算模块,用于对所述故障切换期望时长和所述切换权重进行超时计算,得到所述候选节点的切换超时时长;
节点筛选模块,用于根据所述切换权重和所述节点标记对所述候选节点进行筛选,得到候选主节点;所述候选主节点没有所述失败标记,所述候选主节点为当前提升的所述候选节点;
节点提升模块,用于对所述候选主节点进行主节点提升,并检测所述候选主节点的提升结果和当前提升耗时时长;其中,所述提升结果包括第一结果,所述第一结果用于表示所述候选主节点提升为目标主节点失败;
节点重选模块,用于若所述提升结果为所述第一结果,且所述当前提升耗时时长大于当前提升的所述候选节点的所述切换超时时长,则将当前提升的所述候选节点的所述节点标记修改为所述失败标记,并根据所述切换权重和所述节点标记对所述候选主节点进行切换。
为实现上述目的,本申请实施例的第三方面提出了一种电子设备,所述电子设备包括存储器、处理器、所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的基于数据库的节点切换方法。
为实现上述目的,本申请实施例的第四方面提出了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的基于数据库的节点切换方法。
本申请提出的基于数据库的节点切换方法、装置、电子设备及存储介质,通过根据候选节点的切换权重和故障切换期望时长计算出切换超时时长,可以得到每一候选节点的切换超时时长。根据切换权重和节点标记选取没有失败标记且切换权重较高的候选节点作为候选主节点,可以提高节点切换的成功率。若候选主节点无法在切换超时时长内成功提升为目标主节点,则重新选择候选主节点进行主节点提升,进一步提高了节点切换的成功率。
附图说明
图1是本申请一个实施例提供的基于数据库的节点切换方法的流程图;
图2是图1中的步骤S102的流程图;
图3是图1中的步骤S103的流程图;
图4是图1中的步骤S103的流程图;
图5是本申请一个实施例提供的应用示例流程图;
图6是本申请实施例提供的基于数据库的节点切换装置的模块结构框图;
图7是本申请一个实施例提供的电子设备的硬件结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
在信息时代,几乎任何一个信息系统都需要数据库系统的支撑。数据库承担了信息的存储、处理工作。如果数据库不可用,很可能导致整个业务系统不可用。所以,成熟的数据库一般会有一种甚至多种高可用方案来避免单点故障,如果某个节点不可用,其他节点可以接管该节点的工作,保证服务的可用性。
需要说明的是,数据库集群中包括多个节点,具体包括一个主节点和多个从节点。本申请实施例将发生故障的主节点称为原始主节点,将进行主节点提升成功的候选主节点称为目标主节点。利用目标主节点替代原始主节点,实现PostgreSQL数据库的故障转移及高可用。
候选主节点:在数据库高可用集群中,当由于主节点故障而开始切换后,如果某个从节点被选为新的主节点,但是还没有正式提升为主节点,则称该从节点为候选主节点。
切换超时时长:将候选主节点成功提升为主需要等待的最大时长,超过该切换超时时长则认为该候选主节点提升失败。
PostgreSQL数据库作为主流的关系型数据库,已经有一些比较成熟的高可用方案,比如patroni、pgpool-II等都是较为优秀且流行的方案。但是这些方案有如下两个问题:
1.当发生故障需要将某个从节点提升为主节点时,从节点只要满足某些预置条件就可以进行提升。当有多个从节点都满足这些条件时,新主节点的选择就具有随机性。而实际情况是,由于高可用集群部署方式的多样性,会导致不同节点的数据同步情况、物理位置、网络状况、硬件资源情况都不尽相同。若随机选择从节点进行节点提升,极易提升失败,也即节点切换的成功率较低。
2.当某个从节点被选为候选主节点后,可能因为一些原因(比如在提升过程中出现故障)无法成功提升为主。一般会一直在该候选主节点上尝试切换或者在重试超时后失败,故障切换无法成功,导致数据库集群不可用。
综上所述,目前数据库的节点切换的成功率较低,因此,如何提高节点切换的成功率,成为了亟待解决的技术问题。
基于此,本申请实施例提供基于数据库的节点切换方法、基于数据库的节点切换装置、电子设备及存储介质,旨在数据库发生故障需要切换主节点时,根据候选节点的切换权重和故障切换期望时长计算出切换超时时长。根据切换权重和节点标记选取没有失败标记且切换权重较高的候选节点作为候选主节点,对该候选主节点进行主节点提升,可以提高节点切换的成功率。若候选主节点无法在切换超时时长内成功提升为目标主节点,则重新选择候选主节点进行主节点提升,进一步提高了节点切换的成功率,也实现了故障转移。
需要说明的是,若某一候选主节点成功提升为目标主节点,则说明节点切换成功。本申请实施例所指的节点切换成功率是指某一数据库集群在原始主节点故障之后,重新得到目标主节点的概率。另外,若某一候选主节点一直提升失败,则本申请实施例会进行候选主节点的切换,以此得到新的候选主节点。并对新的候选主节点进行主节点提升,由于避免了一直对同一候选主节点进行主节点提升,提高了节点切换的成功率。
还需要说明的是,本申请实施例的数据库具体是指PostgreSQL数据库。
本申请实施例提供的基于数据库的节点切换方法应用于服务器端中,还可以是运行于终端或服务器端中的软件。服务器端可以配置成独立的物理服务器,也可以配置成多个物理服务器构成的服务器集群或者分布式系统,还可以配置成提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN以及大数据和人工智能平台等基础云计算服务的云服务器;软件可以是实现基于数据库的节点切换方法的应用等,但并不局限于以上形式。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:服务器计算机、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本申请实施例提供基于数据库的节点切换方法和基于数据库的节点切换装置、电子设备、存储介质,具体通过如下实施例进行说明,首先描述本申请实施例中的基于数据库的节点切换方法。
图1是本申请实施例提供的基于数据库的节点切换方法的一个可选的流程图,可以包括但不限于包括步骤S101至步骤S105。
步骤S101,获取配置信息;配置信息包括故障切换期望时长、每一个候选节点的切换权重和每一个候选节点的节点标记;节点标记包括失败标记;
步骤S102,对故障切换期望时长和切换权重进行超时计算,得到候选节点的切换超时时长;
步骤S103,根据切换权重和节点标记对候选节点进行筛选,得到候选主节点;候选主节点没有失败标记,候选主节点为当前提升的候选节点;
步骤S104,对候选主节点进行主节点提升,并检测候选主节点的提升结果和当前提升耗时时长;其中,提升结果包括第一结果,第一结果用于表示候选主节点提升为目标主节点失败;
步骤S105,若提升结果为第一结果,且当前提升耗时时长大于当前提升的候选节点的切换超时时长,则将当前提升的候选节点的节点标记修改为失败标记,并根据切换权重和节点标记对候选主节点进行切换。
本申请实施例所示意的步骤S101至步骤S105,在当数据库发生故障需要切换主节点时,根据候选节点的切换权重和故障切换期望时长计算出切换超时时长。根据切换权重和节点标记选取没有失败标记且切换权重较高的候选节点作为候选主节点,可以提高节点切换的成功率。若候选主节点无法在切换超时时长内成功提升为目标主节点,则重新选择候选主节点进行主节点提升,进一步提高了故障切换的成功率。
本申请实施例存在以下有益效果:
1.通过切换权重实现了切换时的优先级,可以根据高可用集群的部署架构和每个候选节点的具体情况来实现切换时的优先级,使得故障转移支持的场景大大增加;
2.通过故障切换期望时长,使得在该时长内可以尝试切换到所有可切换的候选节点,不会一直阻塞在某个候选节点,大大提升了切换的成功率和缩短了故障恢复时长;
3.通过故障切换期望时间和切换权重计算出每个候选节点的切换超时时长,该算法可以使得高切换权重的候选节点获得更多的时间去等待其切换成功,使得切换到高切换权重的候选节点的概率较高。
需要说明的是,在数据库发生故障时,一般是随机选取一个从节点作为候选主节点。但这样的随机的选取方式,经常会因为从节点本身的缺陷而无法提升为目标主节点。例如,第一次节点切换时,随机选择了从节点A作为候选主节点进行提升,结果是提升失败。第二次节点切换时,仍然随机选择了从节点A作为候选主节点进行提交,结果仍然是提升失败。由此可知,现有技术的随机选择的候选主节点将导致节点切换的成功率较低。而在本申请实施例中,使用节点标记对候选节点进行筛选,以便将没有失败标记的候选节点作为候选主节点。另外,还使用切换权重对候选节点进行筛选,以便得到切换权重较高的候选主节点。通过节点标记和切换权重的双重筛选,提高了候选主节点的选取质量,有益于提高节点切换的成功率。
还需要说明的是,在将候选主节点进行主节点提升时,一般在没有提升成功之前,会一直在该候选主节点上尝试提升或者在重试超时后失败,无法选择其他从节点去切换,故障切换无法成功,导致数据库集群不可用。而在本申请实施例中,为每一个候选节点都设置了切换超时时长,若当前提升的候选节点超过了切换超时时长都未提升成功,则需重新选择候选主节点,以此避免在同一个失败的候选主节点上而导致节点切换失败,提高了节点切换的成功率。另外,切换超时时长由切换权重和切换期望超时时长计算而来。因此,若候选节点的切换权重不同,则对应的切换超时时长则不同,给予了不同候选节点不同的的切换超时时长,因此能够尽量保证切换权重高的候选节点更可能提升为目标主节点。
在一些实施例的步骤S101中,配置信息存放的介质可以是分布式配置存储、文件、数据库;配置信息的格式可以是键值、表格、文本。
故障切换期望时长是指在故障发生之后,进行主节点提升需要等待的最大时长,超过该故障切换期望时长则认为节点切换失败,也指集群的故障转移失败。
切换权重用于表示候选节点的重要程度。例如同步节点比异步节点的切换权重高,异步节点比级联节点的切换权重高,主机房的节点比备机房节点的切换权重高。通过切换权重对候选节点进行筛选,若候选节点的切换权重越高,则说明该候选节点更适合成为候选主节点,且在进行主节点提升时,提升的成功率较高。例如,若候选节点A处于主机房,而候选节点B处于备机房,且都可以作为候选主节点。但候选节点A的切换权重高于候选节点B,若选用了候选节点A作为候选主节点,由于候选节点A与原始主节点同在主机房,进行节点提升时会更容易,从而提高了节点切换的成功率。
在一实施例中,切换权重根据候选节点与原始主节点之间的相对关系进行设置。可以提高节点切换的场景适应性。在一示例中,该相对关系包括候选节点与原始主节点位于相同机房、候选节点与原始主节点位于不同机房。相同机房的切换权重高于不同机房的候选节点。在另一示例中,该相对关系包括候选节点与原始主节点为同步节点、候选节点与原始主节点为异步节点和候选节点与原始主节点为级联节点。同步节点的切换权重高于异步节点,异步节点的切换权重高于级联节点。
每一个候选节点都有节点标记。该节点标记用于表示候选节点进行主节点提升的提升结果。节点标记的取值包括空标记、成功标记和失败标记。若节点标记为失败标记,则说明该候选节点之前进行过主节点提升,但提升失败。若节点标记为空,则说明该候选节点之前未进行过主节点提升,或者是进行过主节点提升,但并未更新节点标记。若节点标记为成功标记,则说明该候选节点之前进行过主节点提升,且提升成功,但该候选节点目前不是主节点。在一示例中,节点标记的失败标记用“0”表示,节点标记的成功标记用“1”表示,除了“0”和“1”以外的其他取值,都可视为空标记。
在一些实施例的步骤S102中,对故障切换期望时长和切换权重进行超时计算,得到候选节点的切换超时时长。故障切换期望时长为这个数据库集群进行节点切换所需等待的最大时长,根据切换权重为候选节点分配切换超时时长,可以控制当前提升的候选节点的最大等待时长,以便根据切换超时时长调控候选主节点的重新选取,提高节点切换成功率。
参阅图2,在一些实施例中,步骤S102具体包括但不限于步骤S201至步骤S203:
步骤S201,对至少一个候选节点的切换权重进行求和,得到求和结果;
步骤S202,根据候选节点的切换权重与求和结果的比值得到时长占比;
步骤S203,根据时长占比和故障切换期望时长的比值得到候选节点的切换超时时长。
本申请实施例所示意的步骤S201至步骤S203,通过切换权重和切换权重总和的比值确定时长占比,从而根据时长占比和故障切换期望时长的比值确定切换超时时长。由于切换权重越高则切换超时时长越长,而切换超时时长越长则进行主节点提升时,能有更多的时间进行重试,进而高切换权重的候选节点成为目标主节点的可能性越高。
在一示例中,数据库集群包括候选节点A、候选节点B和候选节点C。切换权重分别是3、2、1。故障切换期望时长为600秒。则候选节点A的切换超时时长为(3/(3+2+1))*600=300秒。则候选节点B的切换超时时长为(2/(3+2+1))*600=200秒。则候选节点C的切换超时时长为(1/(3+2+1))*600=100秒。
在另一些实施例中,在步骤S201之前,基于数据库的节点切换方法还包括:
根据预设的重要性系数对切换权重进行更新;重要性系数用于表示切换权重对切换超时时长的影响。
具体的,重要性系数越大,则说明切换权重对切换超时时长的影响越大。在一示例 中,将重要性系数与切换权重进行相乘计算,得到新的切换权重。例如,数据库集群包括候 选节点A、候选节点B和候选节点C。切换权重分别是3、2、1。若重要性系数为2,则新的切换权 重分别是6(3*2)、4(2*2)、2(1*2)。在另一示例中,根据重要性系数对切换权重进行指数计 算,得到新的切换权重。例如,数据库集群包括候选节点A、候选节点B和候选节点C。切换权 重分别是3、2、1。若重要性系数为2,则新的切换权重分别是9(
Figure 293891DEST_PATH_IMAGE004
)、4(
Figure 244529DEST_PATH_IMAGE005
)、1(
Figure 64718DEST_PATH_IMAGE006
)。
在一些实施例中,基于数据库的节点切换方法还包括:获取重要性系数,具体包括:
获取服务连续性信息和服务质量信息;
基于服务连续性信息和服务质量信息设置重要性系数。
具体地,由于切换权重较高的候选节点一般服务质量较高(比如复制模式为同步,性能较高,位于主机房等),所以重要性系数的选择有如下规则:
1.当数据库集群对服务连续性的要求相对于服务质量的要求较高时,即更加关注数据库的可用性时,采用较小的重要性系数可以更好的满足这种场景。因为重要性系数越小,不同切换权重节点的切换超时时长差距就越小,使得在高权重节点上消耗的时长就越少。当较高切换权重的候选节点无法切换时,可以尽快地尝试切换到较低切换权重的候选节点,整体上减少了节点切换消耗的时间,提高了服务连续性。
2.当数据库集群对服务质量的要求相对于服务连续性的要求较高时,即更加关注数据库的数据一致性或者性能时,采用较大的重要性系数可以更好的满足这种场景。因为重要性系数越大,不同切换权重的候选节点的切换超时时长差距就越大,使得高切换权重的候选节点的切换超时时长越长,切换到高切换权重的候选节点的概率越高,从而提高了节点切换后的服务质量。
在一些实施例中,步骤S102具体包括:根据预设的计算公式对故障切换期望时长和切换权重进行超时计算,计算公式包括:
Figure 417202DEST_PATH_IMAGE001
其中,
Figure 359750DEST_PATH_IMAGE002
是第i个候选节点的切换超时时长,
Figure 250214DEST_PATH_IMAGE003
是第i个候选节点的切换权重,T为故 障切换期望时长,a是重要性系数。
在另一例中,数据库集群包括候选节点A、候选节点B和候选节点C。切换权重分别 是3、2、1。若重要性系数为0,则新的切换权重分别是1(
Figure 670831DEST_PATH_IMAGE007
)、1(
Figure 143401DEST_PATH_IMAGE008
)、1(
Figure 928954DEST_PATH_IMAGE009
);则候选节点A的切 换超时时长为(1/(1+1+1))*600=200秒;则候选节点B的切换超时时长为(1/(1+1+1))*600= 200秒;则候选节点C的切换超时时长为(1/(1+1+1))*600=200秒。若重要性系数为2,则新的 切换权重分别是9(
Figure 854185DEST_PATH_IMAGE004
)、4(
Figure 766909DEST_PATH_IMAGE005
)、1(
Figure 828406DEST_PATH_IMAGE006
);则候选节点A的切换超时时长为(9/(9+4+1))*600= 386秒;则候选节点B的切换超时时长为(4/(9+4+1))*600=171秒;则候选节点C的切换超时 时长为(1/(9+4+1))*600=43秒。
在一些实施例中,在步骤S103之前,基于数据库的节点切换方法还包括但不限于:
获取每一候选节点的节点状态;若节点状态为主状态和/或不健康状态,则将候选节点删除;
和/或,
将切换权重为零的候选节点删除。
具体的,通过上述处理方式对候选节点进行删除处理,避免将不健康或主状态或切换权重为零的候选节点选做候选主节点,以此减少因候选节点本身的缺陷而导致节点切换失败,进一步提高了节点切换成功率。
在一示例中,使用命令从数据库集群获取候选节点的state值,state值用于表示节点状态。如果该state值为running,则说明该候选节点为健康状态,如果不为running或者为空,则认为该候选节点为不健康状态。
在一些实施例的步骤S103中,根据切换权重和节点标记对候选节点进行筛选,得到候选主节点;候选主节点没有失败标记,候选主节点为当前提升的候选节点。
参阅图3,在一些实施例中,步骤S103具体包括但不限于步骤S301至步骤S303:
步骤S301,将节点标记为失败标记的候选节点删除;
步骤S302,根据切换权重对没有失败标记的候选节点进行优先级排序,得到节点优先级;
步骤S303,按照节点优先级对没有失败标记的候选节点进行筛选,得到候选主节点。
本申请实施例所示意的步骤S301至步骤S303,通过将有失败标记的候选节点进行删除,并根据切换权重来控制切换的优先级顺序,得到的候选主节点质量更高。有助于提高节点切换的成功率。
在一示例中,数据库集群包括候选节点A、候选节点B和候选节点C。切换权重分别是3、2、1。其中,候选节点A的节点标记为失败标记,候选节点B的节点标记为空标记,候选节点C的节点标记为成功标记。候选节点A由于存在失败标记不能作为候选主节点,将被删除。剩余候选节点B和候选节点C,而候选节点B的切换权重(2)高于候选节点C,因此将候选节点B作为候选主节点。可以理解的是,若候选节点B无法提升为目标主节点,则进行候选主节点切换后,候选节点C将成为新的候选主节点。
参阅图4,在另一些实施例中,步骤S103具体包括但不限于步骤S401至步骤S404:
步骤S401,根据切换权重对候选节点进行优先级排序,得到节点优先级;
步骤S402,按照节点优先级从候选节点筛选出选定节点,并对选定节点的节点标记进行检测;
步骤S403,若节点标记为失败标记,则按照节点优先级对选定节点进行切换;
步骤S404,若节点标记不为失败标记,则将选定节点作为候选主节点。
本申请实施例所示意的步骤S401至步骤S404,先对候选节点进行优先级排序,根据节点优先级依次得到选定节点。当选定节点没有失败标记,则将其作为候选主节点。本申请实施例得到的候选主节点质量更高,有助于提高节点切换的成功率。
在一示例中,数据库集群包括候选节点A、候选节点B和候选节点C。切换权重分别是3、2、1。其中,候选节点A的节点标记为失败标记,候选节点B的节点标记为空标记,候选节点C的节点标记为成功标记。先根据切换权重进行优先级排序,则候选节点A的节点优先级最高,候选节点B的节点优先级在候选节点A和候选节点C之间,候选节点C的节点优先级最低。先根据节点优先级将候选节点A作为选定节点,由于候选节点A的节点标记为失败标记,则需按照节点优先级选取候选节点B为新的选定节点。由于候选节点B的节点标记为空标记,不是失败标记,因此将候选节点B作为候选主节点。可以理解的是,若候选节点B无法提升为目标主节点,则进行候选主节点切换后,候选节点C将成为新的候选主节点。
在一些实施例的步骤S104中,对候选主节点进行主节点提升,并检测候选主节点的提升结果和当前提升耗时时长。提升结果包括第一结果和第二结果。第一结果用于表示候选主节点提升为目标主节点失败。第二结果用于表示候选主节点提升为目标主节点成功。
在一示例中,检测该候选主节点是否提升成功:通过检测数据库集群中保存的leader值是否为该候选主节点的节点名,以及该候选主节点的角色是否为主来判断切换是否成功,需这两个检测项都通过才认为成功。
在另一些实施例中,在步骤S104之后,若提升结果为第一结果,且若当前提升时长小于或等于当前提升的候选节点的切换超时时长,则重复检测候选主节点的提升结果,直至提升结果为第二结果。
在一些实施例的步骤S105中,若提升结果为第一结果,说明候选主节点提升为目标主节点失败。若当前提升耗时时长大于当前提升的候选节点的切换超时时长,说明已经超过该候选节点对应的最大等待时长。为了避免一直在同一候选主节点上进行主节点提升,本申请实施例将当前提升的候选节点的节点标记修改为失败标记,且根据切换权重和节点标记对候选主节点进行切换,以便得到新的候选主节点进行主节点提升,提高节点切换的成功率,实现故障转移。
参照图5,在一实施例中,基于数据库的节点切换方法包括:
开始切换流程;
根据切换权重和节点标记对候选节点进行筛选;
若筛选不出候选主节点,则节点切换失败,且切换流程结束;
若筛选出候选主节点,则对候选主节点进行主节点提升;
检测候选主节点的提升结果和当前提升耗时时长;
若提升结果为第二结果,则节点切换成功,且切换流程结束;
若提升结果为第一结果,则对当前提升耗时时长和当前提升的候选节点的切换超时时长(切换超时时长通过对故障切换期望时长和切换权重进行超时计算得到)进行比较;
若当前提升时长小于或等于当前提升的候选节点的切换超时时长,则重复对候选主节点进行主节点提升、并检测候选主节点的提升结果,直至提升结果为第二结果;则节点切换成功,且切换流程结束;
若当前提升耗时时长大于当前提升的候选节点的切换超时时长,终止对候选主节点的主节点提升,并将当前提升的候选节点的节点标记修改为失败标记,并根据切换权重和节点标记对候选主节点进行切换;以便根据新的候选主节点进行主节点提升,直至切换流程的耗时大于故障切换期望时长,则节点切换失败,且切换流程结束。
请参阅图6,本申请实施例还提供基于数据库的节点切换装置,可以实现上述基于数据库的节点切换方法,图6为本申请实施例提供的基于数据库的节点切换装置的模块结构框图,该装置包括:信息获取模块501、时长计算模块502、节点筛选模块503、节点提升模块504和节点重选模块505。其中,信息获取模块501用于获取配置信息;配置信息包括故障切换期望时长、每一个候选节点的切换权重和每一个候选节点的节点标记;节点标记包括失败标记;时长计算模块502用于对故障切换期望时长和切换权重进行超时计算,得到候选节点的切换超时时长;节点筛选模块503用于根据切换权重和节点标记对候选节点进行筛选,得到候选主节点;候选主节点没有失败标记,候选主节点为当前提升的候选节点;节点提升模块504用于对候选主节点进行主节点提升,并检测候选主节点的提升结果和当前提升耗时时长;其中,提升结果包括第一结果,第一结果用于表示候选主节点提升为目标主节点失败;节点重选模块505用于若提升结果为第一结果,且当前提升耗时时长大于当前提升的候选节点的切换超时时长,则将当前提升的候选节点的节点标记修改为失败标记,并根据切换权重和节点标记对候选主节点进行切换。
需要说明的是,该基于数据库的节点切换装置的具体实施方式与上述基于数据库的节点切换方法的具体实施例基本相同,在此不再赘述。
本申请实施例还提供了电子设备,电子设备包括:存储器、处理器、存储在存储器上并可在处理器上运行的程序以及用于实现处理器和存储器之间的连接通信的数据总线,程序被处理器执行时实现上述基于数据库的节点切换方法。该电子设备可以为包括平板电脑、车载电脑等任意智能终端。
请参阅图7,图7示意了另一实施例的电子设备的硬件结构,电子设备包括:
处理器601,可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请实施例所提供的技术方案;
存储器602,可以采用只读存储器(Read Only Memory,ROM)、静态存储设备、动态存储设备或者随机存取存储器(Random Access Memory,RAM)等形式实现。存储器602可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器602中,并由处理器601来调用执行本申请实施例的基于数据库的节点切换方法;
输入/输出接口603,用于实现信息输入及输出;
通信接口604,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信;
总线605,在设备的各个组件(例如处理器601、存储器602、输入/输出接口603和通信接口604)之间传输信息;
其中处理器601、存储器602、输入/输出接口603和通信接口604通过总线605实现彼此之间在设备内部的通信连接。
本申请实施例还提供了存储介质,存储介质为计算机可读存储介质,用于计算机可读存储,存储介质存储有一个或者多个程序,一个或者多个程序可被一个或者多个处理器执行,以实现上述基于数据库的节点切换方法。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本申请实施例提供的基于数据库的节点切换方法、基于数据库的节点切换装置、电子设备及存储介质,在数据库需要切换主节点时,根据候选节点的切换权重和故障切换期望时长计算出切换超时时长。根据切换权重和节点标记选取没有失败标记且切换权重较高的候选节点作为候选主节点,可以提高节点切换的成功率。若候选主节点无法在切换超时时长内成功提升为目标主节点,则重新选择候选主节点进行主节点提升,进一步提高了故障切换的成功率。
本申请实施例描述的实施例是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本领域技术人员可以理解的是,图1-4中示出的技术方案并不构成对本申请实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台电子设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序的介质。
以上参照附图说明了本申请实施例的优选实施例,并非因此局限本申请实施例的权利范围。本领域技术人员不脱离本申请实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本申请实施例的权利范围之内。

Claims (10)

1.一种基于数据库的节点切换方法,其特征在于,所述方法包括:
获取配置信息;所述配置信息包括故障切换期望时长、每一个候选节点的切换权重和每一个候选节点的节点标记;所述节点标记包括失败标记;
对所述故障切换期望时长和所述切换权重进行超时计算,得到所述候选节点的切换超时时长;
根据所述切换权重和所述节点标记对所述候选节点进行筛选,得到候选主节点;所述候选主节点没有所述失败标记,所述候选主节点为当前提升的所述候选节点;
对所述候选主节点进行主节点提升,并检测所述候选主节点的提升结果和当前提升耗时时长;其中,所述提升结果包括第一结果,所述第一结果用于表示所述候选主节点提升为目标主节点失败;
若所述提升结果为所述第一结果,且所述当前提升耗时时长大于当前提升的所述候选节点的所述切换超时时长,则将当前提升的所述候选节点的所述节点标记修改为所述失败标记,并根据所述切换权重和所述节点标记对所述候选主节点进行切换。
2.根据权利要求1所述的方法,其特征在于,所述根据所述切换权重和所述节点标记对所述候选节点进行筛选,得到候选主节点,包括:
根据所述切换权重对所述候选节点进行优先级排序,得到节点优先级;
按照所述节点优先级从所述候选节点筛选出选定节点,并对所述选定节点的所述节点标记进行检测;
若所述节点标记为所述失败标记,则按照所述节点优先级对所述选定节点进行切换;
若所述节点标记不为失败标记,则将所述选定节点作为候选主节点。
3.根据权利要求1所述的方法,其特征在于,所述根据所述切换权重和所述节点标记对所述候选节点进行筛选,得到候选主节点,还包括:
将所述节点标记为所述失败标记的所述候选节点删除;
根据所述切换权重对没有所述失败标记的所述候选节点进行优先级排序,得到节点优先级;
按照所述节点优先级对没有所述失败标记的所述候选节点进行筛选,得到候选主节点。
4.根据权利要求1所述的方法,其特征在于,在所述根据所述切换权重和所述节点标记对所述候选节点进行筛选,得到候选主节点之前,所述方法还包括:
获取每一所述候选节点的节点状态;若所述节点状态为主状态和/或不健康状态,则将所述候选节点删除;
和/或,
将所述切换权重为零的所述候选节点删除。
5.根据权利要求1所述的方法,其特征在于,所述对所述故障切换期望时长和所述切换权重进行超时计算,得到所述候选节点的切换超时时长,包括:
对至少一个所述候选节点的所述切换权重进行求和,得到求和结果;
根据所述候选节点的所述切换权重与所述求和结果的比值得到时长占比;
根据所述时长占比和所述故障切换期望时长的比值得到所述候选节点的切换超时时长。
6.根据权利要求5所述的方法,其特征在于,在所述根据至少一个所述候选节点的所述切换权重的总和得到求和结果之前,所述方法还包括:
根据预设的重要性系数对所述切换权重进行更新;所述重要性系数用于表示所述切换权重对所述切换超时时长的影响;
其中,获取所述重要性系数,包括:
获取服务连续性信息和服务质量信息;
基于所述服务连续性信息和所述服务质量信息设置所述重要性系数。
7.根据权利要求6所述的方法,其特征在于,根据预设的计算公式对所述故障切换期望时长和所述切换权重进行超时计算,所述计算公式包括:
Figure DEST_PATH_IMAGE002
其中,
Figure DEST_PATH_IMAGE004
是第i个所述候选节点的切换超时时长,
Figure DEST_PATH_IMAGE006
是第i个所述候选节点的切换权重,T为所述故障切换期望时长,a是所述重要性系数,n是所述候选节点的总数量。
8.一种基于数据库的节点切换装置,其特征在于,所述装置包括:
信息获取模块,用于获取配置信息;所述配置信息包括故障切换期望时长、每一个候选节点的切换权重和每一个候选节点的节点标记;所述节点标记包括失败标记;
时长计算模块,用于对所述故障切换期望时长和所述切换权重进行超时计算,得到所述候选节点的切换超时时长;
节点筛选模块,用于根据所述切换权重和所述节点标记对所述候选节点进行筛选,得到候选主节点;所述候选主节点没有所述失败标记,所述候选主节点为当前提升的所述候选节点;
节点提升模块,用于对所述候选主节点进行主节点提升,并检测所述候选主节点的提升结果和当前提升耗时时长;其中,所述提升结果包括第一结果,所述第一结果用于表示所述候选主节点提升为目标主节点失败;
节点重选模块,用于若所述提升结果为所述第一结果,且所述当前提升耗时时长大于当前提升的所述候选节点的所述切换超时时长,则将当前提升的所述候选节点的所述节点标记修改为所述失败标记,并根据所述切换权重和所述节点标记对所述候选主节点进行切换。
9.一种电子设备,其特征在于,所述电子设备包括存储器、处理器、所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述的基于数据库的节点切换方法。
10.一种存储介质,所述存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的基于数据库的节点切换方法。
CN202211223963.9A 2022-10-09 2022-10-09 基于数据库的节点切换方法、装置、电子设备及存储介质 Active CN115296982B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211223963.9A CN115296982B (zh) 2022-10-09 2022-10-09 基于数据库的节点切换方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211223963.9A CN115296982B (zh) 2022-10-09 2022-10-09 基于数据库的节点切换方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN115296982A CN115296982A (zh) 2022-11-04
CN115296982B true CN115296982B (zh) 2023-01-17

Family

ID=83833683

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211223963.9A Active CN115296982B (zh) 2022-10-09 2022-10-09 基于数据库的节点切换方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN115296982B (zh)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003039071A1 (en) * 2001-10-29 2003-05-08 Sun Microsystems, Inc. Method to manage high availability equipments
CN108810100B (zh) * 2018-05-22 2021-06-29 郑州云海信息技术有限公司 一种主节点的选举方法、装置及设备
CN108933822B (zh) * 2018-06-28 2019-10-18 北京百度网讯科技有限公司 用于处理信息的方法和装置
WO2020227870A1 (zh) * 2019-05-10 2020-11-19 Oppo广东移动通信有限公司 一种切换方法及装置、通信设备
CN111754218A (zh) * 2020-06-29 2020-10-09 深圳前海微众银行股份有限公司 支付方式推荐方法和装置
CN113708968B (zh) * 2021-08-27 2023-08-11 中国互联网络信息中心 区块链的节点选举控制方法和装置

Also Published As

Publication number Publication date
CN115296982A (zh) 2022-11-04

Similar Documents

Publication Publication Date Title
CN111338774B (zh) 分布式定时任务调度系统及计算装置
KR101752928B1 (ko) 객체 저장부들의 네트워크상의 스웜-기반의 동기화
CN109788068B (zh) 心跳状态信息上报方法、装置和设备及计算机存储介质
CN106572153A (zh) 集群的数据存储方法及装置
US10860375B1 (en) Singleton coordination in an actor-based system
CN112015595B (zh) 主从数据库的切换方法、计算设备及存储介质
US10757171B1 (en) Merge trees for collaboration
CN113132176A (zh) 一种控制边缘节点的方法、节点及边缘计算系统
WO2020226821A1 (en) Messaging to enforce operation serialization for consistency of a distributed data structure
CN111147312B (zh) 资源配置的管理方法及装置、资源配置缓存的管理方法及装置、配置管理系统
JP4796086B2 (ja) クラスタシステム及び同システムにおいてマスタノードを選択する方法
CN114565502A (zh) Gpu资源管理方法、调度方法、装置、电子设备及存储介质
CN115296982B (zh) 基于数据库的节点切换方法、装置、电子设备及存储介质
CN110737543B (zh) 一种分布式文件系统数据恢复的方法、装置及存储介质
CN107943615B (zh) 基于分布式集群的数据处理方法与系统
CN117370316A (zh) 数据库的高可用管理方法和装置、电子设备及存储介质
CN107704490A (zh) 一种基于对等存储的数据处理方法及装置
JP2011209811A (ja) 仮想マシンシステムおよび仮想マシン配置方法
CN115794769B (zh) 高可用数据库管理的方法、电子设备及存储介质
CN116319758A (zh) 数据迁移方法、装置、电子设备及可读存储介质
CN114363356B (zh) 数据同步方法、系统、装置、计算机设备和存储介质
CN112306373A (zh) 一种集群扩容方法、系统及电子设备和存储介质
CN117992501B (zh) 数据库集群脑裂预防方法、装置、电子设备及存储介质
CN117009060B (zh) 资源调度方法、装置、设备及存储介质
CN117931247B (zh) 基于泛终端os的智能家电交互方法

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
GR01 Patent grant
GR01 Patent grant