一种客户端连接关系调整方法、系统及节点技术方案

技术编号:24764000 阅读:37 留言:0更新日期:2020-07-04 11:06
本发明专利技术公开了一种客户端连接关系调整方法、系统及节点。其中,该方法包括:数据库集群中的任一节点周期性获取数据库集群中所有节点的连接信息和切换信息,其中,连接信息为数据库集群中目标节点的信息,切换信息为要调整的客户端的信息;任一节点根据连接信息和切换信息对任一节点与客户端的连接关系进行调整。这样即使各节点上的负载情况发生变化,那么任一节点也可以基于获取到的最新的连接信息和切换信息对自身的与客户端之间的连接关系进行动态调整,从而实现数据库集群的负载均衡。

A client connection adjustment method, system and node

【技术实现步骤摘要】
一种客户端连接关系调整方法、系统及节点
本专利技术实施例涉及数据处理技术,尤其涉及一种客户端连接关系调整方法、系统及节点。
技术介绍
在对应用系统实现数据库集群负载均衡领域中,现有的实现方式通常是在客户端创建连接时,确定连接实例。一旦确定连接实例后,则一直保持该连接的实例不变。而连接实例的分配是根据建立连接时系统的负载情况,例如,客户端连接数、内存、中央处理器(CentralProcessingUnit,CPU)等确定的。如果各实例的负载情况发生变化,比如由于客户端连接断开造成各实例上的连接数不均衡,或者已分配到实例的连接产生的负载始终比其他实例上的负载大等,则无法动态调整连接的实例。
技术实现思路
本专利技术提供一种客户端连接关系调整方法、系统及节点,能够动态地调整节点与客户端之间的连接关系,实现数据库集群的负载均衡。第一方面,本专利技术实施例提供了一种客户端连接关系调整方法,该方法包括:数据库集群中的任一节点周期性获取数据库集群中所有节点的连接信息和切换信息,其中,连接信息为数据库集群中目标节点的信息,切换信息为要调整的客户端的信息;任一节点根据连接信息和切换信息对任一节点与客户端的连接关系进行调整。第二方面,本专利技术实施例还提供了一种客户端连接关系调整系统,该系统包括:至少两个节点构成的数据库集群和与至少两个节点连接的客户端;其中,数据库集群中的任一节点,用于周期性获取数据库集群中所有节点的连接信息和切换信息,其中,连接信息为数据库集群中目标节点的信息,切换信息为要调整的客户端的信息;以及,根据连接信息和切换信息对任一节点与客户端的连接关系进行调整;客户端,用于解析响应消息,获取连接信息和切换信息;当客户端根据切换信息确定自身需要切换时,用于根据连接信息连接至目标节点,并断开自身与任一节点的连接关系;客户端还用于在初次连接任一节点时,缓存自身的连接信息和任一节点的连接信息。第三方面,本专利技术实施例还提供了一种节点,该节点包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,当处理器执行计算机程序时,实现如本专利技术实施例中任一节点的功能。本专利技术实施例提供了一种客户端连接关系调整方法、系统及节点,具体为数据库集群中的任一节点周期性获取数据库集群中所有节点的连接信息和切换信息,其中,连接信息为数据库集群中目标节点的信息,切换信息为要调整的客户端的信息;任一节点根据连接信息和切换信息对任一节点与客户端的连接关系进行调整。这样即使各节点上的负载情况发生变化,那么任一节点也可以基于获取到的最新的连接信息和切换信息对自身的与客户端之间的连接关系进行动态调整,从而实现数据库集群的负载均衡。附图说明图1是本专利技术实施例中的客户端连接关系调整方法流程图;图2是本专利技术实施例中的客户端连接关系调整系统示意图;图3是本专利技术实施例中的节点结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。另外,在本专利技术实施例中,“可选地”或者“示例性地”等词用于表示作例子、例证或说明。本专利技术实施例中被描述为“可选地”或者“示例性地”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“可选地”或者“示例性地”等词旨在以具体方式呈现相关概念。图1为本专利技术实施例提供的一种客户端连接关系调整方法,应用于包括至少两个节点的数据集群场景下,如图1所示,该方法具体包括:S101、数据库集群中的任一节点周期性获取数据库集群中所有节点的连接信息和切换信息。上述步骤中的连接信息为数据库集群中要连接的目标节点的信息,例如,目标节点的网际协议地址(InternetProtocolAddress,IP地址)、端口号等,切换信息为节点上将要进行切换调整的客户端的相关信息,比如要切换的数目、接口等。其中,客户端为数据库集群的一部分,具体可以理解为应用程序和数据库集群之间进行通讯的接口、驱动。在本实施例中,数据库集群中的任一节点可以为控制节点,也可以为从控节点,其中,控制节点用于确定目标节点,从控节点用于根据控制节点发送的信息进行客户端连接关系调整。当然,目标节点可以为控制节点,也可以为从控节点。S102、任一节点根据连接信息和切换信息对任一节点与客户端的连接关系进行调整。通过步骤S101获取到数据库集群中所有节点的连接信息和切换信息后,该任一节点可以根据所有节点的连接信息和切换信息对自身与客户端的连接关系进行调整。在本实施例中,由于各个节点可以周期性获取数据库集群中的所有节点最新的连接信息和切换信息,这样即使各节点上的负载情况发生变化,那么基于节点获取到的最新的连接信息和切换信息,也可以对自身的与客户端之间的连接关系进行动态调整,从而在遵循原子性、一致性、隔离性、持久性(Atomicity、Consistency、Isolation、Durability,ACDI)原则的情况下,实现数据库集群的负载均衡,同时,该实现方式也不需要对应用程序进行调整。在一种示例中,当上述任一节点为控制节点时,步骤S101的实现方式可以为控制节点周期性地收集数据库集群中所有节点的负载信息,例如,各个节点的内存使用、CPU、客户端连接数等,进而根据所有节点的负载信息确定所有节点的连接信息和切换信息。示例性地,控制节点根据所有节点的负载信息确定所有节点的连接信息和切换信息的实现方式可以为,控制节点基于负载均衡算法,根据所有节点的负载信息确定出数据库集群中负载最小的节点作为集群中的所有节点切换的目标节点,该目标节点的信息即为上述连接信息。进而,控制节点根据该目标节点的负载信息确定出各节点的切换信息,例如,各节点需要切换的数目、接口等。其中,上述负载均衡算法可以采用现有技术中能够实现相应功能的任意算法,本实施对此不作限定。当然,上述确定出的切换信息并非是除目标节点之外的所有节点连接的客户端都需要进行切换,即有的节点需要切换的客户端的数目为0,有的节点连接的所有客户端中只有部分客户端需要切换至目标节点。在一种示例中,当上述任一节点为从控节点时,步骤S101的实现方式可以为从控节点周期性接收控制节点发送的数据库集群中所有节点的连接信息和切换信息,其中,该从控节点可以为数据库集群中除控制节点之外的任意一个节点。在一种示例中,当任一节点与客户端之间的连接关系需要进行调整时,上述步骤S102的实现方式可以为,任一节点根据连接信息和切换信息将与任一节点连接的客户端切换至目标节点,其中,目标节点为数据库集群中除任一节点之外的其他节点中的任一节点。例如,任一节点在执行完事务COMMIT或ROLLBACK后,可以以发送响应消息的方式,将获取的连接信息和切换信息携带在响应消本文档来自技高网...

【技术保护点】
1.一种客户端连接关系调整方法,其特征在于,包括:/n数据库集群中的任一节点周期性获取所述数据库集群中所有节点的连接信息和切换信息,其中,所述连接信息为所述数据库集群中目标节点的信息,所述切换信息为要调整的客户端的信息;/n所述任一节点根据所述连接信息和切换信息对所述任一节点与客户端的连接关系进行调整。/n

【技术特征摘要】
1.一种客户端连接关系调整方法,其特征在于,包括:
数据库集群中的任一节点周期性获取所述数据库集群中所有节点的连接信息和切换信息,其中,所述连接信息为所述数据库集群中目标节点的信息,所述切换信息为要调整的客户端的信息;
所述任一节点根据所述连接信息和切换信息对所述任一节点与客户端的连接关系进行调整。


2.根据权利要求1所述的方法,其特征在于,所述数据库集群中的任一节点周期性获取所述数据库集群中所有节点的连接信息和切换信息,包括:
当所述任一节点为控制节点时,所述控制节点周期性收集所述数据库集群中所有节点的负载信息;
所述控制节点根据所有节点的负载信息确定所有节点的连接信息和切换信息。


3.根据权利要求1所述的方法,其特征在于,所述数据库集群中的任一节点周期性获取所述数据库集群中所有节点的负载信息和切换信息,包括:
当所述任一节点为从控节点时,所述从控节点周期性接收控制节点发送的所述数据库集群中所有节点的连接信息和切换信息;
其中,所述从控节点为所述数据库集群中除控制节点之外的任意一个节点。


4.根据权利要求1-3任一项所述的方法,其特征在于,所述任一节点根据所述连接信息和切换信息对所述任一节点与客户端的连接关系进行调整,包括:
所述任一节点根据所述连接信息和切换信息将与所述任一节点连接的客户端切换至目标节点,所述目标节点为数据库集群中除所述任一节点之外的其他节点中的任一节点;
或者,所述任一节点根据所述连接信息和切换信息保持所述任一节点与客户端的连接关系不变;
或者,当所述任一节点根据所述连接信息确定自身为目标节点时,所述目标节点根据所述切换信息与对应的客户端连接。


5.根据权利要求4所述的方法,其特征在于,所述任一节点根据所述连接信息和切换信息将与所述任一节点连接的客户端切换至目标节点,包括:
所述任一节点将携带所述连接信息和切换信息的响应消息发送至与所述任一节点连接的客户端...

【专利技术属性】
技术研发人员:王海龙蔡池池韩朱忠
申请(专利权)人:上海达梦数据库有限公司
类型:发明
国别省市:上海;31

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

1