CN111163142B - 一种域名解析方法及相关装置 - Google Patents
一种域名解析方法及相关装置 Download PDFInfo
- Publication number
- CN111163142B CN111163142B CN201911328635.3A CN201911328635A CN111163142B CN 111163142 B CN111163142 B CN 111163142B CN 201911328635 A CN201911328635 A CN 201911328635A CN 111163142 B CN111163142 B CN 111163142B
- Authority
- CN
- China
- Prior art keywords
- domain name
- client
- name resolution
- virtual
- parameter
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000004590 computer program Methods 0.000 claims description 10
- 230000000694 effects Effects 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Classifications
-
- 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]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- 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/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- 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
-
- 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/2866—Architectures; Arrangements
- H04L67/30—Profiles
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开了一种域名解析方法,包括接收客户端发送的域名解析请求并判断配置文件中是否存在域名解析请求对应的域名;若存在,则读取域名以及在配置文件中位于域名下方的参数;参数包括对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数、文件服务开关参数以及均衡策略参数;根据对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数确定域名对应的服务类型,根据均衡策略参数确定均衡策略;根据服务类型与均衡策略解析域名得到虚拟IP并将虚拟IP返回给客户端。该方法能够满足服务类型多样性的需求。本申请还公开了一种域名解析装置、设备以及计算机可读存储介质,均具有上述技术效果。
Description
技术领域
本申请涉及分布式存储技术领域,特别涉及一种域名解析方法;还涉及一种域名解析装置、设备以及计算机可读存储介质。
背景技术
在分布式文件系统中,为实现负载均衡,进行域名解析时,域名系统会根据客户端的域名解析请求,采用轮询策略、最小连接数策略等进行域名解析,分配后端服务器。其中,目前,域名解析时,针对不同域名,域名系统只能一种服务类型(文件服务、对象服务或块服务中的一种)。即对于配置文件中所记载的所有域名,域名系统均会根据配置文件所唯一确定的服务类型对各域名进行解析,无论客户端访问配置文件中所记载的哪一个域名,该域名对应的服务类型与其他域名对应的服务类型均一样,由此导致服务器类型单一。因此,如何解决上述技术缺陷已成为本领域技术人员亟待解决的技术问题。
发明内容
本申请的目的是提供一种域名解析方法,能够满足服务类型多样性的需求。本申请的另一目的是提供一种域名解析装置、设备以及计算机可读存储介质,均具有上述技术效果。
为解决上述技术问题,本申请提供了一种域名解析方法,包括:
接收当前客户端发送的域名解析请求并判断配置文件中是否存在所述域名解析请求对应的域名;
若存在,则读取所述域名以及在所述配置文件中位于所述域名下方的参数;所述参数包括对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数、文件服务开关参数以及均衡策略参数;
根据所述对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数确定所述域名对应的服务类型,根据所述均衡策略参数确定均衡策略;
根据所述服务类型与所述均衡策略解析所述域名得到虚拟IP并将所述虚拟IP返回给所述当前客户端。
可选的,所述根据所述服务类型与所述均衡策略解析所述域名得到虚拟IP并将所述虚拟IP返回给所述当前客户端,包括:
判断所述当前客户端与前一次请求域名解析的客户端是否为同一个客户端以及所述当前客户端是否首次请求域名解析;
若为不同客户端或所述当前客户端首次请求域名解析,则根据所述服务类型与所述均衡策略解析所述域名得到所述虚拟IP并将所述虚拟IP返回给当前客户端;
若为同一个客户端,则判断所述当前客户端本次访问的域名与上一次访问的域名是否相同;
若不相同,则根据所述服务类型与所述均衡策略解析所述域名得到所述虚拟IP并将所述虚拟IP返回给所述当前客户端;
若相同,则判断所述域名是否已解析过;
若未解析过,则根据所述服务类型与所述均衡策略解析所述域名得到所述虚拟IP并将所述虚拟IP返回给所述当前客户端;
若解析过,则判断所述域名下的所述文件服务开关参数是否为真;
若为真,则从保存所述配置文件的数据的结构体中读取所述虚拟IP并将所述虚拟IP返回给所述当前客户端;
若为假,则判断所述当前客户端本次访问域名与上一次访问域名的时间间隔是否大于所述对客户端连续域名解析时间间隔参数的赋值;
若大于,则根据所述服务类型与所述均衡策略解析域名得到所述虚拟IP并将所述虚拟IP返回给当前客户端;
若不大于,则从保存所述配置文件的数据的结构体中读取所述虚拟IP,并将所述虚拟IP返回给所述当前客户端。
可选的,还包括:
升级原配置文件得到所述配置文件。
可选的,升级原配置文件得到所述配置文件,包括:
按行读取所述原配置文件中的数据;
判断是否读取到所述对客户端连续域名解析开关参数、所述对客户端连续域名解析时间间隔参数以及所述文件服务开关参数;
若读取到,则将所述对客户端连续域名解析开关参数、所述对客户端连续域名解析时间间隔参数以及所述文件服务开关参数所在行的数据分别保存到第一变量、第二变量以及第三变量中,并将所述原配置文件中所述对客户端连续域名解析开关参数、所述对客户端连续域名解析时间间隔参数以及所述文件服务开关参数所在行的数据删除;
识别所述原配置文件中的所述均衡策略参数,并将所述第一变量、所述第二变量以及所述第三变量所保存的数据依次写入所述均衡策略参数所在行的下方。
可选的,所述均衡策略为轮询策略、加权轮询策略、最小连接数策略、随机策略以及源地址哈希策略中的任意一种。
为解决上述技术问题,本申请还提供了一种域名解析装置,包括:
判断模块,用于接收当前客户端发送的域名解析请求并判断配置文件中是否存在所述域名解析请求对应的域名;
读取模块,用于若存在,则读取所述域名以及在所述配置文件中位于所述域名下方的参数;所述参数包括对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数、文件服务开关参数以及均衡策略参数;
确定模块,用于根据所述对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数确定所述域名对应的服务类型,根据所述均衡策略参数确定均衡策略;
解析模块,用于根据所述服务类型与所述均衡策略解析所述域名得到虚拟IP并将所述虚拟IP返回给所述当前客户端。
可选的,还包括:
升级模块,用于升级原配置文件得到所述配置文件。
可选的,所述升级模块包括:
读取单元,用于按行读取所述原配置文件中的数据;
判断单元,用于判断是否读取到所述对客户端连续域名解析开关参数、所述对客户端连续域名解析时间间隔参数以及所述文件服务开关参数;
保存单元,用于若读取到,则将所述对客户端连续域名解析开关参数、所述对客户端连续域名解析时间间隔参数以及所述文件服务开关参数所在行的数据分别保存到第一变量、第二变量以及第三变量中,并将所述原配置文件中所述对客户端连续域名解析开关参数、所述对客户端连续域名解析时间间隔参数以及所述文件服务开关参数所在行的数据删除;
写入单元,用于识别所述原配置文件中的所述均衡策略参数,并将所述第一变量、所述第二变量以及所述第三变量所保存的数据依次写入所述均衡策略参数所在行的下方。
为解决上述技术问题,本申请还提供了一种域名解析设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上所述的域名解析方法的步骤。
为解决上述技术问题,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的域名解析方法的步骤。
本申请所提供的域名解析方法,包括接收当前客户端发送的域名解析请求并判断配置文件中是否存在所述域名解析请求对应的域名;若存在,则读取所述域名以及在所述配置文件中位于所述域名下方的参数;所述参数包括对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数、文件服务开关参数以及均衡策略参数;根据所述对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数确定所述域名对应的服务类型,根据所述均衡策略参数确定均衡策略;根据所述服务类型与所述均衡策略解析所述域名得到虚拟IP并将所述虚拟IP返回给所述当前客户端。
可见,区别于现有技术,本申请所提供的域名解析方法,在配置文件中的各域名的下方均设置客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数、文件服务开关参数以及均衡策略,从而可根据通过配置上述参数而设置各域名对应的服务类型,由此实现配置文件中不同域名对应不同的服务器类型的目的,满足客户对服务类型多样性的需求。
本申请所提供的域名解析装置、设备以及计算机可读存储介质,均具有上述技术效果。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例所提供的一种域名解析方法的流程示意图;
图2为本申请实施例所提供的一种配置文件信息的示意图;
图3为本申请实施例所提供的另一种配置文件信息的示意图;
图4为本申请实施例所提供的一种保存配置文件数据的结构体的示意图;
图5为本申请实施例所提供的一种域名解析装置的示意图。
具体实施方式
本申请的核心是提供一种域名解析方法,能够满足服务类型多样性的需求。本申请的另一核心是提供一种域名解析装置、设备以及计算机可读存储介质,均具有上述技术效果。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参考图1,图1为本申请实施例所提供的一种域名解析方法的流程示意图;参考图1所示,该域名解析方法包括:
S101:接收当前客户端发送的域名解析请求并判断配置文件中是否存在域名解析请求对应的域名;
S102:若存在,则读取域名以及在配置文件中位于域名下方的参数;参数包括对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数、文件服务开关参数以及均衡策略参数;
具体的,DNS即域名系统接收当前客户端发送的域名请求后,首先判断配置文件中是否存在该域名解析请求对应的域名,若不存在,则不对域名解析请求进行处理;若存在,则进一步从内存中读取该域名以及在配置文件中位于该域名下方的参数,包括连续域名解析开关参数(clienttype)、对客户端连续域名解析时间间隔参数(clienttime)、文件服务开关参数(timeswitch)以及均衡策略参数(policy)。
重要的是,区别于传统的以服务器类型为单位的配置文件,本申请所提供的技术方案中,配置文件以域名为单位。具体而言,传统的配置文件中参数clienttype、clienttime以及timeswitch均位于域名domainname的上方,各上述参数决定配置文件中所有域名的服务类型。参考图2所示,clienttype、clienttime以及timeswitch位于域名www.test1.com以及域名www.test2.com的上方。从而,无论客户端访问域名www.test1.com还是访问域名www.test2.com,域名系统都会以上述参数所决定的服务类型进行域名解析。参数policy的赋值决定域名的均衡策略,如图2所示,域名www.test1.com下的参数policy赋值为round-robin,因此,域名www.test1.com对应的均衡策略为轮询策略;域名www.test2.com下的参数policy赋值为link,因此,域名www.test2.com对应的均衡策略为最小连接数策略。
其中,<type clienttype=“ture”/>表示对客户端连续域名解析;<clienttimeclienttime=“2”/>表示对客户端连续域名解析的时间间隔为2s。当然,根据实际需求也可设置为其他数值,如5s、10s。<timeswitch timeswitch=“false”/>表示开启文件或对象服务,<timeswitch timeswitch=“ture”/>表示开启块服务。当timeswitch赋值为true时,开启块服务,clienttype=“ture”与clienttime=“2”为无效值,此时,同一客户端连续访问同一域名时,域名系统每次都返回第一次解析的结果。当timeswitch赋值为false时,开启文件或对象服务,clienttype=“ture”与clienttime=“2”为有效值,此时,若客户端在2s内连续请求域名解析,则域名系统返回上次解析的结果,若客户端再次请求域名解析的时间超出2s,则域名系统重新进行域名解析并返回解析结果。
如图2所示,timeswitch赋值为false,即开启文件或对象服务,clienttype的赋值为true,clienttime的赋值为2,clienttype=“ture”与clienttime=“2”为有效值,此时,无论客户端访问域名www.test1.com还是访问域名www.test2.com,域名系统都会以文件或对象的形式进行域名解析。
较之如图2所示的现有技术,本申请所提供的技术方案中,参数clienttype、clienttime以及timeswitch位于域名的下方,各域名下方均具有参数clienttype、clienttime、timeswitch以及policy。针对不同的域名,可以通过配置上述参数而设置不同的服务类型以及均衡策略,从而满足服务类型多样性的需求。
参考图3所示,配置文件中域名www.test1.com与域名www.test2.com下方均包括上述参数,域名www.test1.com下方的参数timeswitch赋值为false,clienttype赋值为true,clienttime赋值为2,故域名www.test1.com对应的服务器类型为文件或对象服务。域名www.test2.com下方的timeswitch赋值为ture,clienttype的赋值为true,clienttime的赋值为2,故域名www.test2.com对应的服务类型为块服务。
S103:根据对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数确定域名对应的服务类型,根据均衡策略参数确定均衡策略;
S104:根据服务类型与均衡策略解析域名得到虚拟IP并将虚拟IP返回给当前客户端。
具体的,在读取域名以及域名下方参数的基础上,进一步根据参数对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数确定域名对应的服务类型,根据均衡策略参数确定均衡策略。进而,根据此服务类型与均衡策略进行域名解析,得到虚拟IP,并将虚拟IP返回给当前客户端。其中,上述均衡策略可以为轮询策略、加权轮询策略、最小连接数策略、随机策略以及源地址哈希策略中的任意一种,具体根据实际需求配置均衡策略参数即可。
例如,如图3所示,域名www.test1.com下方的参数timeswitch赋值为false,clienttype赋值为true,clienttime赋值为2,故当客户端访问域名www.test1.com时,域名系统会以文件或对象的形式,采用轮询策略对域名www.test1.com进行解析。域名www.test2.com下方的timeswitch赋值为ture,clienttype的赋值为true,clienttime的赋值为2,故当客户端访问域名www.test2.com时,域名系统会以块的形式,采用最小连接数策略对域名www.test2.com进行解析。
在一种具体的实施方式中,所述根据所述服务类型与所述均衡策略解析所述域名得到虚拟IP并将所述虚拟IP返回给所述当前客户端,包括判断所述当前客户端与前一次请求域名解析的客户端是否为同一个客户端以及所述当前客户端是否首次请求域名解析;若为不同客户端或所述当前客户端首次请求域名解析,则根据所述服务类型与所述均衡策略解析所述域名得到所述虚拟IP并将所述虚拟IP返回给当前客户端;若为同一个客户端,则判断所述当前客户端本次访问的域名与上一次访问的域名是否相同;若不相同,则根据所述服务类型与所述均衡策略解析所述域名得到所述虚拟IP并将所述虚拟IP返回给所述当前客户端;若相同,则判断所述域名是否已解析过;若未解析过,则根据所述服务类型与所述均衡策略解析所述域名得到所述虚拟IP并将所述虚拟IP返回给所述当前客户端;若解析过,则判断所述域名下的所述文件服务开关参数是否为真;若为真,则从保存所述配置文件的数据的结构体中读取所述虚拟IP并将所述虚拟IP返回给所述当前客户端;若为假,则判断所述当前客户端本次访问域名与上一次访问域名的时间间隔是否大于所述对客户端连续域名解析时间间隔参数的赋值;若大于,则根据所述服务类型与所述均衡策略解析域名得到所述虚拟IP并将所述虚拟IP返回给当前客户端;若不大于,则从保存所述配置文件的数据的结构体中读取所述虚拟IP,并将所述虚拟IP返回给所述当前客户端。采用本实施例所提供的技术方案,可以有效提高服务器处理域名解析请求的效率。
其中,参考图4所示的保存配置文件的数据的结构体,LoadBlance用于保存端口号、配置文件的修改时间、域名的个数、域名以及域名下的参数等。LoadBlance除保存域名以及域名下的参数外,还通过参数oldvirip保存客户端上一次访问某域名时,域名系统返回的虚拟IP,通过参数oldclientip保存第一次访问该域名的客户端的IP。若客户端发生变化,则参数oldvirip重新保存新解析得到的虚拟IP,参数oldclientip重新保存新客户端的IP。
进一步,还包括:升级原配置文件得到配置文件。且升级原配置文件得到配置文件可以包括:按行读取原配置文件中的数据;判断是否读取到对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数;若读取到,则将对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数所在行的数据分别保存到第一变量、第二变量以及第三变量中,并将原配置文件中对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数所在行的数据删除;识别原配置文件中的均衡策略参数,并将第一变量、第二变量以及第三变量所保存的数据依次写入均衡策略参数所在行的下方。
具体的,编写脚本文件,并将该脚本文与负载均衡代码进行编译得到rap包,在服务端升级rap包的过程中,自动执行该脚本文件,通过执行上述操作,将原配置文件中位于各域名上方的对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数移到指定域名的下方,实现对原配置文件的升级。
综上所述,本申请所提供的域名解析方法,在配置文件中的各域名的下方均设置客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数、文件服务开关参数以及均衡策略,从而可根据通过配置上述参数而设置各域名对应的服务类型,由此实现配置文件中不同域名对应不同的服务器类型的目的,满足客户对服务类型多样性的需求。
本申请还提供了一种域名解析装置,下文描述的该装置可以与上文描述的方法相互对应参照。参考图5所示,该域名解析装置包括:
判断模块10,用于接收当前客户端发送的域名解析请求并判断配置文件中是否存在域名解析请求对应的域名;
读取模块20,用于若存在,则读取域名以及在配置文件中位于域名下方的参数;参数包括对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数、文件服务开关参数以及均衡策略参数;
确定模块30,用于根据对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数确定域名对应的服务类型,根据均衡策略参数确定均衡策略;
解析模块40,用于根据服务类型与均衡策略解析域名得到虚拟IP并将虚拟IP返回给当前客户端。
在上述实施例的基础上,还包括:
升级模块,用于升级原配置文件得到配置文件。
在上述实施例的基础上,升级模块包括:
读取单元,用于按行读取原配置文件中的数据;
判断单元,用于判断是否读取到对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数;
保存单元,用于若读取到,则将对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数所在行的数据分别保存到第一变量、第二变量以及第三变量中,并将原配置文件中对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数所在行的数据删除;
写入单元,用于识别原配置文件中的均衡策略参数,并将第一变量、第二变量以及第三变量所保存的数据依次写入均衡策略参数所在行的下方。
本申请还提供了一种数据缓存设备,该数据缓存设备包括:存储器与处理器;其中,存储器用于存储计算机程序;处理器用于执行该计算机程序时实现如下的步骤:
接收当前客户端发送的域名解析请求并判断配置文件中是否存在域名解析请求对应的域名;若存在,则读取域名以及在配置文件中位于域名下方的参数;参数包括对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数、文件服务开关参数以及均衡策略参数;根据对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数确定域名对应的服务类型,根据均衡策略参数确定均衡策略;根据服务类型与均衡策略解析域名得到虚拟IP并将虚拟IP返回给当前客户端。
对于本申请所提供的设备的介绍请参照上述方法的实施例,本申请在此不做赘述。
本申请还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现如下的步骤:
接收当前客户端发送的域名解析请求并判断配置文件中是否存在域名解析请求对应的域名;若存在,则读取域名以及在配置文件中位于域名下方的参数;参数包括对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数、文件服务开关参数以及均衡策略参数;根据对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数确定域名对应的服务类型,根据均衡策略参数确定均衡策略;根据服务类型与均衡策略解析域名得到虚拟IP并将虚拟IP返回给当前客户端。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
对于本发明所提供的计算机可读存储介质的介绍请参照上述方法实施例,本发明在此不做赘述。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、设备以及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦写可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的域名解析方法、装置、设备以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围。
Claims (9)
1.一种域名解析方法,其特征在于,包括:
接收当前客户端发送的域名解析请求并判断配置文件中是否存在所述域名解析请求对应的域名;所述配置文件以域名为单位;
若存在,则读取所述域名以及在所述配置文件中位于所述域名下方的参数;所述参数包括对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数、文件服务开关参数以及均衡策略参数;
根据所述对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数确定所述域名对应的服务类型,根据所述均衡策略参数确定均衡策略;
根据所述服务类型与所述均衡策略解析所述域名得到虚拟IP并将所述虚拟IP返回给所述当前客户端;
所述根据所述服务类型与所述均衡策略解析所述域名得到虚拟IP并将所述虚拟IP返回给所述当前客户端,包括:
判断所述当前客户端与前一次请求域名解析的客户端是否为同一个客户端以及所述当前客户端是否首次请求域名解析;
若为不同客户端或所述当前客户端首次请求域名解析,则根据所述服务类型与所述均衡策略解析所述域名得到所述虚拟IP并将所述虚拟IP返回给当前客户端;
若为同一个客户端,则判断所述当前客户端本次访问的域名与上一次访问的域名是否相同;
若不相同,则根据所述服务类型与所述均衡策略解析所述域名得到所述虚拟IP并将所述虚拟IP返回给所述当前客户端;
若相同,则判断所述域名是否已解析过;
若未解析过,则根据所述服务类型与所述均衡策略解析所述域名得到所述虚拟IP并将所述虚拟IP返回给所述当前客户端;
若解析过,则判断所述域名下的所述文件服务开关参数是否为真;
若为真,则从保存所述配置文件的数据的结构体中读取所述虚拟IP并将所述虚拟IP返回给所述当前客户端;
若为假,则判断所述当前客户端本次访问域名与上一次访问域名的时间间隔是否大于所述对客户端连续域名解析时间间隔参数的赋值;
若大于,则根据所述服务类型与所述均衡策略解析域名得到所述虚拟IP并将所述虚拟IP返回给当前客户端;
若不大于,则从保存所述配置文件的数据的结构体中读取所述虚拟IP,并将所述虚拟IP返回给所述当前客户端。
2.根据权利要求1所述的域名解析方法,其特征在于,还包括:
升级原配置文件得到所述配置文件。
3.根据权利要求2所述的域名解析方法,其特征在于,升级原配置文件得到所述配置文件,包括:
按行读取所述原配置文件中的数据;
判断是否读取到所述对客户端连续域名解析开关参数、所述对客户端连续域名解析时间间隔参数以及所述文件服务开关参数;
若读取到,则将所述对客户端连续域名解析开关参数、所述对客户端连续域名解析时间间隔参数以及所述文件服务开关参数所在行的数据分别保存到第一变量、第二变量以及第三变量中,并将所述原配置文件中所述对客户端连续域名解析开关参数、所述对客户端连续域名解析时间间隔参数以及所述文件服务开关参数所在行的数据删除;
识别所述原配置文件中的所述均衡策略参数,并将所述第一变量、所述第二变量以及所述第三变量所保存的数据依次写入所述均衡策略参数所在行的下方。
4.根据权利要求3所述的域名解析方法,其特征在于,所述均衡策略为轮询策略、加权轮询策略、最小连接数策略、随机策略以及源地址哈希策略中的任意一种。
5.一种域名解析装置,其特征在于,包括:
判断模块,用于接收当前客户端发送的域名解析请求并判断配置文件中是否存在所述域名解析请求对应的域名;所述配置文件以域名为单位;
读取模块,用于若存在,则读取所述域名以及在所述配置文件中位于所述域名下方的参数;所述参数包括对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数、文件服务开关参数以及均衡策略参数;
确定模块,用于根据所述对客户端连续域名解析开关参数、对客户端连续域名解析时间间隔参数以及文件服务开关参数确定所述域名对应的服务类型,根据所述均衡策略参数确定均衡策略;
解析模块,用于根据所述服务类型与所述均衡策略解析所述域名得到虚拟IP并将所述虚拟IP返回给所述当前客户端;
所述根据所述服务类型与所述均衡策略解析所述域名得到虚拟IP并将所述虚拟IP返回给所述当前客户端,包括:
判断所述当前客户端与前一次请求域名解析的客户端是否为同一个客户端以及所述当前客户端是否首次请求域名解析;
若为不同客户端或所述当前客户端首次请求域名解析,则根据所述服务类型与所述均衡策略解析所述域名得到所述虚拟IP并将所述虚拟IP返回给当前客户端;
若为同一个客户端,则判断所述当前客户端本次访问的域名与上一次访问的域名是否相同;
若不相同,则根据所述服务类型与所述均衡策略解析所述域名得到所述虚拟IP并将所述虚拟IP返回给所述当前客户端;
若相同,则判断所述域名是否已解析过;
若未解析过,则根据所述服务类型与所述均衡策略解析所述域名得到所述虚拟IP并将所述虚拟IP返回给所述当前客户端;
若解析过,则判断所述域名下的所述文件服务开关参数是否为真;
若为真,则从保存所述配置文件的数据的结构体中读取所述虚拟IP并将所述虚拟IP返回给所述当前客户端;
若为假,则判断所述当前客户端本次访问域名与上一次访问域名的时间间隔是否大于所述对客户端连续域名解析时间间隔参数的赋值;
若大于,则根据所述服务类型与所述均衡策略解析域名得到所述虚拟IP并将所述虚拟IP返回给当前客户端;
若不大于,则从保存所述配置文件的数据的结构体中读取所述虚拟IP,并将所述虚拟IP返回给所述当前客户端。
6.根据权利要求5所述的域名解析装置,其特征在于,还包括:
升级模块,用于升级原配置文件得到所述配置文件。
7.根据权利要求6所述的域名解析装置,其特征在于,所述升级模块包括:
读取单元,用于按行读取所述原配置文件中的数据;
判断单元,用于判断是否读取到所述对客户端连续域名解析开关参数、所述对客户端连续域名解析时间间隔参数以及所述文件服务开关参数;
保存单元,用于若读取到,则将所述对客户端连续域名解析开关参数、所述对客户端连续域名解析时间间隔参数以及所述文件服务开关参数所在行的数据分别保存到第一变量、第二变量以及第三变量中,并将所述原配置文件中所述对客户端连续域名解析开关参数、所述对客户端连续域名解析时间间隔参数以及所述文件服务开关参数所在行的数据删除;
写入单元,用于识别所述原配置文件中的所述均衡策略参数,并将所述第一变量、所述第二变量以及所述第三变量所保存的数据依次写入所述均衡策略参数所在行的下方。
8.一种域名解析设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至4任一项所述的域名解析方法的步骤。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述的域名解析方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911328635.3A CN111163142B (zh) | 2019-12-20 | 2019-12-20 | 一种域名解析方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911328635.3A CN111163142B (zh) | 2019-12-20 | 2019-12-20 | 一种域名解析方法及相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111163142A CN111163142A (zh) | 2020-05-15 |
CN111163142B true CN111163142B (zh) | 2023-04-07 |
Family
ID=70557615
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911328635.3A Active CN111163142B (zh) | 2019-12-20 | 2019-12-20 | 一种域名解析方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111163142B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103891247A (zh) * | 2011-09-20 | 2014-06-25 | 西门子公司 | 用于基于域名系统的设备和目标发现的方法和系统 |
CN103945000A (zh) * | 2014-05-05 | 2014-07-23 | 安徽科大讯飞信息科技股份有限公司 | 一种负载均衡方法及负载均衡器 |
CN108449283A (zh) * | 2018-06-22 | 2018-08-24 | 郑州云海信息技术有限公司 | 基于负载均衡的域名解析方法、系统、设备及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103841045B (zh) * | 2012-11-22 | 2017-11-21 | 中国移动通信集团公司 | 一种互联网缓存处理方法、内容探测子系统和Cache系统 |
CN109871364B (zh) * | 2019-02-26 | 2021-03-26 | 北京控制工程研究所 | 一种数据融合与关联处理方法 |
-
2019
- 2019-12-20 CN CN201911328635.3A patent/CN111163142B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103891247A (zh) * | 2011-09-20 | 2014-06-25 | 西门子公司 | 用于基于域名系统的设备和目标发现的方法和系统 |
CN103945000A (zh) * | 2014-05-05 | 2014-07-23 | 安徽科大讯飞信息科技股份有限公司 | 一种负载均衡方法及负载均衡器 |
CN108449283A (zh) * | 2018-06-22 | 2018-08-24 | 郑州云海信息技术有限公司 | 基于负载均衡的域名解析方法、系统、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111163142A (zh) | 2020-05-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109981805B (zh) | 一种域名解析的方法及装置 | |
CN106953795B (zh) | 配置多网卡的方法及装置 | |
CN108881448B (zh) | Api请求的处理方法及装置 | |
CN110851753B (zh) | 一种网站的访问方法、装置、设备及存储介质 | |
CN109088909B (zh) | 一种基于商户类型的服务灰度发布方法及设备 | |
CN112291365B (zh) | 访问均衡处理方法、装置、计算机设备及存储介质 | |
CN111431753A (zh) | 一种资产信息更新方法、装置、设备及存储介质 | |
CN109726340A (zh) | 统一资源定位符分类的查询方法及装置 | |
CN110674098B (zh) | 一种分布式文件系统中的域名解析方法 | |
CN111064821A (zh) | 边缘节点的ip地址的确定方法和装置 | |
CN109788050B (zh) | 一种获取源站ip地址方法、系统、电子设备和介质 | |
CN109743357B (zh) | 一种业务访问连续性的实现方法及装置 | |
CN111163142B (zh) | 一种域名解析方法及相关装置 | |
CN113938464A (zh) | 一种请求访问方法及终端 | |
CN106790071B (zh) | 一种dns全流量劫持风险的检测方法和装置 | |
CN116708041B (zh) | 伪装代理方法、装置、设备及介质 | |
CN110913007B (zh) | 一种域名解析方法、装置及设备 | |
CN109347766B (zh) | 一种资源调度的方法及装置 | |
CN107666444B (zh) | 一种数据流量路由的方法和系统 | |
CN111049941A (zh) | Dns调度方法、域名服务器及计算机可读存储介质 | |
CN106789979B (zh) | 一种idc机房内活跃域名的有效性诊断方法和装置 | |
CN110572485A (zh) | 域名解析方法和装置、系统 | |
CN108964974B (zh) | 一种网络访问的方法和装置 | |
CN110519349B (zh) | 一种基于DNS固定分配虚拟ip的负载均衡方法及装置 | |
CN109344131B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |