CN112929416A - 一种域名系统的负载均衡方法、装置、设备及存储介质 - Google Patents
一种域名系统的负载均衡方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112929416A CN112929416A CN202110089107.8A CN202110089107A CN112929416A CN 112929416 A CN112929416 A CN 112929416A CN 202110089107 A CN202110089107 A CN 202110089107A CN 112929416 A CN112929416 A CN 112929416A
- Authority
- CN
- China
- Prior art keywords
- load balancing
- virtual
- service node
- data
- domain name
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000004590 computer program Methods 0.000 claims description 10
- 230000002159 abnormal effect Effects 0.000 abstract description 24
- 230000000694 effects Effects 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1036—Load balancing of requests to servers for services different from user content provisioning, e.g. load balancing across domain name servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种域名系统的负载均衡方法、装置、设备及计算机可读存储介质,该方法包括:DNS节点获取客户端的待解析域名;获取待解析域名对应的虚拟ip负载均衡策略;获取虚拟ip负载均衡策略对应的目标负载均衡数据;根据目标负载均衡数据,利用虚拟ip负载均衡策略确定待解析域名对应的虚拟ip,并将虚拟ip发送到客户端;本发明通过获取虚拟ip负载均衡策略对应的目标负载均衡数据,能够筛选出预设时间范围内的服务节点的负载均衡数据,以排除pdns异常的服务节点的负载均衡数据对负载均衡的干扰,从而避免了免因服务节点的pdns异常导致的虚拟ip负载均衡的不均衡情况,保证DNS的负载均衡效果。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种域名系统的负载均衡方法、装置、设备及计算机可读存储介质。
背景技术
目前,域名系统(DNS)的负载均衡依赖第三方软件pdns(powerDNS,一个跨平台的开源DNS服务组件)才能正常的发送和接收数据。DNS节点接收其他服务端节点发送过来的数据,保存到内存当中,当有客户端通过域名访问DNS节点,DNS节点会根据该域名对应的策略(即负载均衡策略)进行相应计算,返回虚拟ip给客户端。若该域名对应的策略为连接数策略,DNS节点计算出连接数为最小值的那个节点(即服务节点)对应的虚拟ip返回给客户端;若该域名对应的策略为cpu(内存或带宽)策略,DNS节点计算出cpu(内存或带宽)使用率为最小值的那个节点对应的虚拟ip返回给客户端。
然而,若某个节点的pdns出现异常,则该节点不能发送数据给DNS节点,DNS节点无法更新该节点对应的数据,若DNS节点保存的该节点之前的连接数值为最小值,则客户端通过域名访问DNS节点(该域名对应的策略为连接数策略),DNS会把该节点对应的虚拟ip返回给客户端,下次有其他客户端继续通过连接数策略访问DNS,DNS会继续把该节点对应的虚拟ip返回给其他客户端,这样就造成了负载均衡的不均衡情况;同理cpu、内存或带宽也会出现这种情况。
因此,如何能够避免因服务节点的pdns异常导致的负载均衡的不均衡情况,保证DNS的负载均衡效果,是现今急需解决的问题。
发明内容
本发明的目的是提供一种域名系统的负载均衡方法、装置、设备及计算机可读存储介质,以避免因服务节点的pdns异常导致的负载均衡的不均衡情况,保证DNS的负载均衡效果。
为解决上述技术问题,本发明提供一种域名系统的负载均衡方法,包括:
DNS节点获取客户端的待解析域名;
获取所述待解析域名对应的虚拟ip负载均衡策略;
获取所述虚拟ip负载均衡策略对应的目标负载均衡数据;其中,所述目标负载均衡数据为预设时间范围内的所述虚拟ip负载均衡策略对应的服务节点的负载均衡数据;
根据所述目标负载均衡数据,利用所述虚拟ip负载均衡策略确定所述待解析域名对应的虚拟ip,并将所述虚拟ip发送到所述客户端。
可选的,所述获取所述虚拟ip负载均衡策略对应的目标负载均衡数据,包括:
将目标服务节点的负载均衡数据作为所述目标负载均衡数据;其中,所述目标服务节点为所述虚拟ip负载均衡策略对应的数据标志为可用标志的服务节点。
可选的,该方法还包括:
根据所述虚拟ip负载均衡策略对应的每个服务节点的负载均衡数据的最新获取时间和时间阈值,确定每个所述服务节点的数据标志。
可选的,所述根据所述虚拟ip负载均衡策略对应的每个服务节点的负载均衡数据的最新获取时间和时间阈值,确定每个所述服务节点的数据标志,包括:
获取当前服务节点发送的负载均衡数据后,将所述当前服务节点的数据标志更新为可用标志,并将当前时间保存为当前服务节点对应的最新获取时间;其中,所述当前服务节点为所述虚拟ip负载均衡策略对应的任一服务节点;
遍历非当前服务节点各自对应的最新获取时间,将所述非当前服务节点中的调整服务节点的数据标志更新为不可用标志;其中,所述非当前服务节点为所述虚拟ip负载均衡策略对应的所述当前服务节点之外的服务节点,当前时间与每个所述调整服务节点对应的最新获取时间之差大于所述时间阈值。
可选的,该方法还包括:
按第一预设时间间隔获取所述虚拟ip负载均衡策略对应的服务节点发送的各自的负载均衡数据。
可选的,该方法还包括:
存储所述虚拟ip负载均衡策略对应的每个服务节点的物理ip和虚拟ip的对应关系。
可选的,所述负载均衡数据包括客户端连接数、CPU使用率、内存使用率和带宽使用率中的至少一项。
本发明还提供了一种域名系统的负载均衡装置,应用于DNS节点,包括:
域名获取模块,用于获取客户端的待解析域名;
策略获取模块,用于获取所述待解析域名对应的虚拟ip负载均衡策略;
数据获取模块,用于获取所述虚拟ip负载均衡策略对应的目标负载均衡数据;其中,所述目标负载均衡数据为预设时间范围内的所述虚拟ip负载均衡策略对应的服务节点的负载均衡数据;
负载均衡模块,用于根据所述目标负载均衡数据,利用所述虚拟ip负载均衡策略确定所述待解析域名对应的虚拟ip,并将所述虚拟ip发送到所述客户端。
本发明还提供了一种域名系统的负载均衡设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述所述的域名系统的负载均衡方法的步骤。
此外,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的域名系统的负载均衡方法的步骤。
本发明所提供的一种域名系统的负载均衡方法,包括:DNS节点获取客户端的待解析域名;获取待解析域名对应的虚拟ip负载均衡策略;获取虚拟ip负载均衡策略对应的目标负载均衡数据;其中,目标负载均衡数据为预设时间范围内的虚拟ip负载均衡策略对应的服务节点的负载均衡数据;根据目标负载均衡数据,利用虚拟ip负载均衡策略确定待解析域名对应的虚拟ip,并将虚拟ip发送到客户端;
可见,本发明通过获取虚拟ip负载均衡策略对应的目标负载均衡数据,能够筛选出预设时间范围内的服务节点的负载均衡数据,以排除pdns异常的服务节点的负载均衡数据,避免pdns异常的服务节点的负载均衡数据对负载均衡的干扰,从而避免了免因服务节点的pdns异常导致的虚拟ip负载均衡的不均衡情况,保证DNS的负载均衡效果。此外,本发明还提供了一种域名系统的负载均衡装置、设备及计算机可读存储介质,同样具有上述有益效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例所提供的一种域名系统的负载均衡方法的流程图;
图2为现有技术中pdns未异常情况下的域名系统的负载均衡方法的示意图;
图3为现有技术中pdns异常情况下的域名系统的负载均衡方法的示意图;
图4为本发明实施例所提供的另一种域名系统的负载均衡方法的服务节点的配置文件的展示图;
图5为本发明实施例所提供的另一种域名系统的负载均衡方法的服务节点的物理ip配置的展示图;
图6为本发明实施例所提供的另一种域名系统的负载均衡方法的服务节点的虚拟ip配置的展示图;
图7为本发明实施例所提供的一种域名系统的负载均衡装置的结构框图;
图8为本发明实施例所提供的一种域名系统的负载均衡设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明实施例所提供的一种域名系统的负载均衡方法的流程图。该方法可以包括:
步骤101:DNS节点获取客户端的待解析域名。
其中,本步骤中的DNS节点可以为域名系统中对客户端访问请求解析的域名(即待解析域名)进行解析,并返回相应虚拟ip的节点(如服务器节点),如图2和图3中的节点1。本步骤中DNS节点获取的客户端的待解析域名可以为客户端访问DNS节点所请求解析的域名,即客户端访问DNS节点所使用的域名。
具体的,对于本步骤中DNS节点的处理器获取客户端的待解析域名的具体方式,可以由设计人员自行设置,如可以采用与现有技术中DNS节点获取客户端的待解析域名的方法相同或相似的方式实现,如本步骤中DNS节点的处理器可以获取客户端访问DNS节点所使用的域名(即待解析域名)。
步骤102:获取待解析域名对应的虚拟ip负载均衡策略。
可以理解的是,本步骤中的虚拟ip负载均衡策略可以为对待解析域名进行解析过程中所采用的保证虚拟ip负载均衡的策略。对于本步骤中的虚拟ip负载均衡策略的具体内容,可以由设计人员根据实用场景和用户需求自行设置,如可以采用与现有技术中的虚拟ip的负载均衡策略相同或相似的方式实现,如虚拟ip负载均衡策略可以为连接数均衡策略,即保证各虚拟ip所连接的客户端的数量均衡;虚拟ip负载均衡策略也可以为cpu(或者内存或带宽)均衡策略,即保证各虚拟ip对应的服务节点的cpu使用率(或者内存使用率或带宽使用率)均衡。
具体的,本实施例并不限定DNS节点的处理器获取待解析域名对应的虚拟ip负载均衡策略的具体方式,如可以采用与现有技术中DNS节点确定待解析域名对应的虚拟ip负载均衡策略的方法相同或相似的方式实现。
步骤103:获取虚拟ip负载均衡策略对应的目标负载均衡数据;其中,目标负载均衡数据为预设时间范围内的虚拟ip负载均衡策略对应的服务节点的负载均衡数据。
可以理解的是,本步骤中的目标负载均衡数据可以为预设时间范围内的虚拟ip负载均衡策略对应的服务节点的负载均衡数据,即预设时间段内获取的虚拟ip负载均衡策略对应的服务节点发送的负载均衡数据。负载均衡数据可以为利用虚拟ip负载均衡策略进行对待解析域名进行解析时,所需实用的服务节点的数据,如客户端连接数、CPU使用率、内存使用率和带宽使用率等。预设时间范围可以为预先设置的用于确定负载均衡数据的可用性的时间范围,即用于排除pdns出现异常的服务节点在pdns异常出现之前发送的负载均衡数据的时间范围。
也就是说,本步骤中通过获取虚拟ip负载均衡策略对应的目标负载均衡数据,能够排除预设时间范围之外的虚拟ip负载均衡策略对应的服务节点的负载均衡数据,即排除服务节点在pdns异常出现之前发送的负载均衡数据对当前的负载均衡的干扰。如图2和图3所示,未出现pdns异常时,节点1作为DNS节点,能够接收各服务节点(包括节点1)发送过来的负载均衡数据,保存在内存中;负载均衡数据可以包括:本节点连接的客户端的个数(即客户端连接数)、cpu使用率、内存使用率和带宽使用率等。节点2的pdns异常时,节点2不再向节点1发送负载均衡数据,节点1之前保存的有节点2的负载均衡数据,但是无法更新;节点1可以更新其他服务节点(包括节点1)发送过来的负载均衡数据。例如虚拟ip负载均衡策略为连接数均衡策略时,节点2在pdns未异常的时候,节点1、节点2、节点3和节点4给节点1发送的客户端连接数分别为1、1、1和1;此时节点2的pdns异常,不能继续向节点1发送负载均衡数据用以更新,下一轮客户端采用连接数均衡策略依次访问DNS节点,DNS节点依次分配节点1、节点2、节点3、节点4对应的虚拟ip,之后DNS节点收到其他服务节点发送来的连接数个数更新后,DNS节点记录的客户端连接数分别为2、1、2、2;之后,客户端再采用连接数均衡策略访问DNS节点,按现有技术DNS节点会一直分配节点2的虚拟ip给客户端,因为节点2的客户端连接数个数一直都是1为最小;而本申请中DNS节点可以通过预设时间范围的设置,使目标负载均衡数据不包含预设时间范围内未向DNS节点发送负载均衡数据的节点2之前发送的负载均衡数据,从而排除了pdns异常的节点2对后续负载均衡的干扰,使得客户端再采用连接数均衡策略访问DNS节点,DNS节点可以按连接数均衡策略,依次分配节点1、节点3、节点4对应的虚拟ip。
具体的,对于本步骤中DNS节点的处理器获取虚拟ip负载均衡策略对应的目标负载均衡数据的具体方式,可以由设计人员根据实用场景和用户需求自行设置,如处理器可以直接将当前时间之前预设时间到当前时间内获取的虚拟ip负载均衡策略对应的服务节点的负载均衡数据作为目标负载均衡数据,即预设时间范围可以当前时间之前预设时间至当前时间的时间范围。处理器也可以将目标服务节点的负载均衡数据作为目标负载均衡数据;其中,目标服务节点为虚拟ip负载均衡策略对应的数据标志为可用标志的服务节点,即预设时间范围可以为数据标志为可用标志的服务节点的负载均衡数据的获取时间对应的时间范围。本实施例对此不作任何限制。
对应的,处理器将目标服务节点的负载均衡数据作为目标负载均衡数据时,本实施例所提供的方法还可以包括处理器根据虚拟ip负载均衡策略对应的每个服务节点的负载均衡数据的最新获取时间和时间阈值,确定每个服务节点的数据标志。如处理器可以在获取当前服务节点发送的负载均衡数据后,将当前服务节点的数据标志更新为可用标志,并将当前时间保存为当前服务节点对应的最新获取时间;遍历非当前服务节点各自对应的最新获取时间,将非当前服务节点中的调整服务节点的数据标志更新为不可用标志;其中,当前服务节点为虚拟ip负载均衡策略对应的任一服务节点,非当前服务节点为虚拟ip负载均衡策略对应的当前服务节点之外的服务节点,当前时间与每个调整服务节点对应的最新获取时间之差大于时间阈值。例如时间阈值为5秒时,DNS节点在每次收到当前服务节点的负载均衡数据,把当前服务节点对应的数据标志置为可用标志(true),并将当前时间保存到当前服务节点对应的时间变量(即最新获取时间),然后遍历其他服务节点,获取当前时间,用当前时间减去各自对应的时间变量保存的值,判断其是否大于5秒,若大于5秒,则将其数据标志置为不可用标志(false),之后不参与负载均衡的虚拟ip分配的计算。
相应的,处理器也可以按照第一预设时间间隔遍历全部服务节点各自对应的最新获取时间,将全部服务节点中的调整服务节点的数据标志更新为不可用标志;当前时间与每个调整服务节点对应的最新获取时间之差大于时间阈值。
需要说明的是,本实施例中各服务节点可以按第一预设时间间隔向DNS节点发送自身采集的负载均衡数据,以使DNS节点可以便捷地获取各服务节点的负载均衡数据;即DNS节点按第一预设时间间隔获取虚拟ip负载均衡策略对应的服务节点发送的各自的负载均衡数据。相应的,各服务节点可以按第二预设时间间隔采集各自的负载均衡数据;例如第一预设时间为5秒,第二预设时间为3秒时,可以在服务节点设置如图4所示的配置文件links.xml,<Interval name=“Collect”>3</Interval>表示服务节点每隔3秒收集一次自身的负载均衡数据,负载均衡数据包括:客户端连接数、cpu使用率、内存使用率和带宽使用率;<Interval name=“Send”>5</Interval>表示服务节点每隔5秒往DNS节点发送一次自身收集的负载均衡数据;<Dst_ip>100.7.44.181</Dst_ip>表示DNS节点虚拟ip为100.7.44.181。
具体的,本实施例中DNS节点可以存储虚拟ip负载均衡策略对应的每个服务节点的物理ip和虚拟ip的对应关系;如图5和图6所示,图5中/etc/ctdb/nodes为三个服务节点同步保存的物理ip;图6为各服务节点的虚拟ip的分配情况;图5中的物理ip:100.7.44.56、100.7.44.57和100.7.44.58分别对应图6所示虚拟ip后面的0、1、2;即物理ip100.7.44.56有一个虚拟ip为100.7.44.181;物理ip100.7.44.57有一个虚拟ip为100.7.44.183;物理ip100.7.44.58有一个虚拟ip为100.7.44.182;每个物理ip均可以有一个ip对应表,用于保存物理ip和虚拟ip的关系。
对应的,由于DNS节点保存的有物理ip与虚拟ip的对应关系,当一个服务节点的pdns异常时,并不会引起自身虚拟ip的漂移,只会影响自身数据的发送和接收。各服务节点采用如图4所示的配置文件时,服务节点每隔5秒往DNS节点发送一次自身收集的负载均衡数据;DNS节点每隔5秒将收集到各服务端节点的数据保存到内存中,更新当前时间保存到相应的时间变量(即最新获取时间),把相应服务节点对应的数据标志置为true;然后通过物理ip与虚拟ip的对应关系,查找是否有未更新的物理ip,若没有,则继续下一次数据收集;若有物理ip未更新,则获取当前时间,减去该物理ip保存对应的时间变量值,判断其是否大于5秒(即时间阈值),若大于5秒,则将其对应的数据标志置为false。当客户端通过域名(即待解析域名)访问DNS节点,DNS节点查找配置文件获取该域名对应的虚拟ip负载均衡策略,然后按照虚拟ip负载均衡策略进行计算,该计算方式将数据标志为false的物理ip给排除掉,只计算数据标志为true的节点,最后通过计算获取虚拟ip返回给客户端。
步骤104:根据目标负载均衡数据,利用虚拟ip负载均衡策略确定待解析域名对应的虚拟ip,并将虚拟ip发送到客户端。
可以理解的是,本步骤的目的可以为处理器利用虚拟ip负载均衡策略,使用pdns未异常的服务节点的负载均衡数据(即目标负载均衡数据)计算待解析域名对应的虚拟ip,排除了pdns异常的服务节点的负载均衡数据,避免了免因服务节点的pdns异常导致的虚拟ip负载均衡的不均衡情况。
具体的,本实施例并不限定处理器根据目标负载均衡数据,利用虚拟ip负载均衡策略确定待解析域名对应的虚拟ip的具体方式,如可以采用与现有技术中的虚拟ip的负载均衡方法相同或相似的方式,利用目标负载均衡数据解析待解析域名,得到待解析域名对应的虚拟ip。
本实施例中,本发明实施例通过获取虚拟ip负载均衡策略对应的目标负载均衡数据,能够筛选出预设时间范围内的服务节点的负载均衡数据,以排除pdns异常的服务节点的负载均衡数据,避免pdns异常的服务节点的负载均衡数据对负载均衡的干扰,从而避免了免因服务节点的pdns异常导致的虚拟ip负载均衡的不均衡情况,保证DNS的负载均衡效果。
请参考图7,图7为本发明实施例所提供的一种域名系统的负载均衡装置的结构框图。该装置应用于DNS节点,可以包括:
域名获取模块10,用于获取客户端的待解析域名;
策略获取模块20,用于获取待解析域名对应的虚拟ip负载均衡策略;
数据获取模块30,用于获取虚拟ip负载均衡策略对应的目标负载均衡数据;其中,目标负载均衡数据为预设时间范围内的虚拟ip负载均衡策略对应的服务节点的负载均衡数据;
负载均衡模块40,用于根据目标负载均衡数据,利用虚拟ip负载均衡策略确定待解析域名对应的虚拟ip,并将虚拟ip发送到客户端。
可选的,数据获取模块30可以具体用于将目标服务节点的负载均衡数据作为目标负载均衡数据;其中,目标服务节点为虚拟ip负载均衡策略对应的数据标志为可用标志的服务节点。
可选的,该装置还可以包括:
标志确定模块,用于根据虚拟ip负载均衡策略对应的每个服务节点的负载均衡数据的最新获取时间和时间阈值,确定每个服务节点的数据标志。
可选的,标志确定模块可以包括:
获取更新子模块,用于获取当前服务节点发送的负载均衡数据后,将当前服务节点的数据标志更新为可用标志,并将当前时间保存为当前服务节点对应的最新获取时间;其中,当前服务节点为虚拟ip负载均衡策略对应的任一服务节点;
遍历更新子模块,用于遍历非当前服务节点各自对应的最新获取时间,将非当前服务节点中的调整服务节点的数据标志更新为不可用标志;其中,非当前服务节点为虚拟ip负载均衡策略对应的当前服务节点之外的服务节点,当前时间与每个调整服务节点对应的最新获取时间之差大于时间阈值。
可选的,该装置还可以包括:
间隔获取模块,用于按第一预设时间间隔获取虚拟ip负载均衡策略对应的服务节点发送的各自的负载均衡数据。
可选的,该装置还可以包括:
对应关系存储模块,用于存储虚拟ip负载均衡策略对应的每个服务节点的物理ip和虚拟ip的对应关系。
可选的,负载均衡数据可以包括客户端连接数、CPU使用率、内存使用率和带宽使用率中的至少一项。
本实施例中,本发明实施例通过数据获取模块30获取虚拟ip负载均衡策略对应的目标负载均衡数据,能够筛选出预设时间范围内的服务节点的负载均衡数据,以排除pdns异常的服务节点的负载均衡数据,避免pdns异常的服务节点的负载均衡数据对负载均衡的干扰,从而避免了免因服务节点的pdns异常导致的虚拟ip负载均衡的不均衡情况,保证DNS的负载均衡效果。
请参考图8,图8为本发明实施例所提供的一种域名系统的负载均衡设备的结构示意图。该设备1可以包括:
存储器11,用于存储计算机程序;处理器12,用于执行该计算机程序时实现如上述实施例所提供的域名系统的负载均衡方法的步骤。
设备1可以具体为服务器,即DNS节点的服务器(如域名解析服务器);设备1可以包括存储器11、处理器12和总线13。
其中,存储器11至少包括一种类型的可读存储介质,该可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是设备1的内部存储单元。存储器11在另一些实施例中也可以是设备1的外部存储设备,例如服务器上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器11还可以既包括设备1的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于设备1的应用软件及各类数据,例如:执行域名系统的负载均衡方法的程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行域名系统的负载均衡方法的程序的代码等。
该总线13可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
进一步地,设备还可以包括网络接口14,网络接口14可选的可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该设备1与其他电子设备之间建立通信连接。
可选地,该设备1还可以包括用户接口15,用户接口15可以包括显示器(Display)、输入单元比如按键,可选的用户接口15还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在设备1中处理的信息以及用于显示可视化的用户界面。
图8仅示出了具有组件11-15的设备1,本领域技术人员可以理解的是,图8示出的结构并不构成对设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
此外,本发明实施例还公开了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现如上述实施例所提供的域名系统的负载均衡方法的步骤。
其中,该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
以上对本发明所提供的一种域名系统的负载均衡方法、装置、设备及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种域名系统的负载均衡方法,其特征在于,包括:
DNS节点获取客户端的待解析域名;
获取所述待解析域名对应的虚拟ip负载均衡策略;
获取所述虚拟ip负载均衡策略对应的目标负载均衡数据;其中,所述目标负载均衡数据为预设时间范围内的所述虚拟ip负载均衡策略对应的服务节点的负载均衡数据;
根据所述目标负载均衡数据,利用所述虚拟ip负载均衡策略确定所述待解析域名对应的虚拟ip,并将所述虚拟ip发送到所述客户端。
2.根据权利要求1所述的域名系统的负载均衡方法,其特征在于,所述获取所述虚拟ip负载均衡策略对应的目标负载均衡数据,包括:
将目标服务节点的负载均衡数据作为所述目标负载均衡数据;其中,所述目标服务节点为所述虚拟ip负载均衡策略对应的数据标志为可用标志的服务节点。
3.根据权利要求2所述的域名系统的负载均衡方法,其特征在于,还包括:
根据所述虚拟ip负载均衡策略对应的每个服务节点的负载均衡数据的最新获取时间和时间阈值,确定每个所述服务节点的数据标志。
4.根据权利要求3所述的域名系统的负载均衡方法,其特征在于,所述根据所述虚拟ip负载均衡策略对应的每个服务节点的负载均衡数据的最新获取时间和时间阈值,确定每个所述服务节点的数据标志,包括:
获取当前服务节点发送的负载均衡数据后,将所述当前服务节点的数据标志更新为可用标志,并将当前时间保存为当前服务节点对应的最新获取时间;其中,所述当前服务节点为所述虚拟ip负载均衡策略对应的任一服务节点;
遍历非当前服务节点各自对应的最新获取时间,将所述非当前服务节点中的调整服务节点的数据标志更新为不可用标志;其中,所述非当前服务节点为所述虚拟ip负载均衡策略对应的所述当前服务节点之外的服务节点,当前时间与每个所述调整服务节点对应的最新获取时间之差大于所述时间阈值。
5.根据权利要求4所述的域名系统的负载均衡方法,其特征在于,还包括:
按第一预设时间间隔获取所述虚拟ip负载均衡策略对应的服务节点发送的各自的负载均衡数据。
6.根据权利要求1所述的域名系统的负载均衡方法,其特征在于,还包括:
存储所述虚拟ip负载均衡策略对应的每个服务节点的物理ip和虚拟ip的对应关系。
7.根据权利要求1所述的域名系统的负载均衡方法,其特征在于,所述负载均衡数据包括客户端连接数、CPU使用率、内存使用率和带宽使用率中的至少一项。
8.一种域名系统的负载均衡装置,其特征在于,应用于DNS节点,包括:
域名获取模块,用于获取客户端的待解析域名;
策略获取模块,用于获取所述待解析域名对应的虚拟ip负载均衡策略;
数据获取模块,用于获取所述虚拟ip负载均衡策略对应的目标负载均衡数据;其中,所述目标负载均衡数据为预设时间范围内的所述虚拟ip负载均衡策略对应的服务节点的负载均衡数据;
负载均衡模块,用于根据所述目标负载均衡数据,利用所述虚拟ip负载均衡策略确定所述待解析域名对应的虚拟ip,并将所述虚拟ip发送到所述客户端。
9.一种域名系统的负载均衡设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述的域名系统的负载均衡方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的域名系统的负载均衡方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110089107.8A CN112929416A (zh) | 2021-01-22 | 2021-01-22 | 一种域名系统的负载均衡方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110089107.8A CN112929416A (zh) | 2021-01-22 | 2021-01-22 | 一种域名系统的负载均衡方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112929416A true CN112929416A (zh) | 2021-06-08 |
Family
ID=76164882
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110089107.8A Withdrawn CN112929416A (zh) | 2021-01-22 | 2021-01-22 | 一种域名系统的负载均衡方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112929416A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113688021A (zh) * | 2021-08-13 | 2021-11-23 | 济南浪潮数据技术有限公司 | 一种负载均衡服务处理方法、装置、设备及可读存储介质 |
CN115225608A (zh) * | 2022-07-22 | 2022-10-21 | 济南浪潮数据技术有限公司 | 一种dns域名解析的负载均衡方法、装置、设备及介质 |
-
2021
- 2021-01-22 CN CN202110089107.8A patent/CN112929416A/zh not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113688021A (zh) * | 2021-08-13 | 2021-11-23 | 济南浪潮数据技术有限公司 | 一种负载均衡服务处理方法、装置、设备及可读存储介质 |
CN113688021B (zh) * | 2021-08-13 | 2023-12-22 | 济南浪潮数据技术有限公司 | 一种负载均衡服务处理方法、装置、设备及可读存储介质 |
CN115225608A (zh) * | 2022-07-22 | 2022-10-21 | 济南浪潮数据技术有限公司 | 一种dns域名解析的负载均衡方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10171299B2 (en) | Method and apparatus for configuring proxy server | |
CN110519183B (zh) | 一种节点限速的方法、装置、电子设备及存储介质 | |
CN109040209A (zh) | 拦截重复请求的方法、装置、计算机设备及存储介质 | |
CN112929416A (zh) | 一种域名系统的负载均衡方法、装置、设备及存储介质 | |
CN112256495A (zh) | 数据传输方法、装置、计算机设备及存储介质 | |
US8239532B1 (en) | System and method of reducing latency using adaptive DNS resolution | |
CN106060004A (zh) | 数据库访问方法及数据库代理节点 | |
AU2013202485A1 (en) | Improved process for selecting an authoritative name server | |
CN109586937B (zh) | 一种缓存系统的运维方法、设备和存储介质 | |
CN109471713B (zh) | 用于查询信息的方法和装置 | |
CN113938464A (zh) | 一种请求访问方法及终端 | |
CN108965386B (zh) | 一种共享接入终端的识别方法及装置 | |
JP2014211758A (ja) | キャッシュサーバ装置、キャッシュ制御方法及びキャッシュ制御プログラム | |
JP5530474B2 (ja) | 情報処理装置及び方法 | |
CN109347766A (zh) | 一种资源调度的方法及装置 | |
CN110519349B (zh) | 一种基于DNS固定分配虚拟ip的负载均衡方法及装置 | |
CN113194107A (zh) | 基于互联网的区域特性的寻址方法和装置 | |
CN113596105A (zh) | 内容的获取方法、边缘节点及计算机可读存储介质 | |
CN110858201B (zh) | 数据处理方法及系统、处理器、存储介质 | |
CN111949403B (zh) | 一种数据包的分配方法、装置及电子设备 | |
CN109889619A (zh) | 基于区块链的异常域名监测方法及装置 | |
CN111163142B (zh) | 一种域名解析方法及相关装置 | |
CN117938809B (zh) | 域名访问路径优化方法、系统和可读存储介质 | |
CN109510864A (zh) | 一种缓存请求的转发方法、传输方法及相关装置 | |
CN112291340B (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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210608 |