CN106210159B - 一种域名解析方法和设备 - Google Patents
一种域名解析方法和设备 Download PDFInfo
- Publication number
- CN106210159B CN106210159B CN201510229585.9A CN201510229585A CN106210159B CN 106210159 B CN106210159 B CN 106210159B CN 201510229585 A CN201510229585 A CN 201510229585A CN 106210159 B CN106210159 B CN 106210159B
- Authority
- CN
- China
- Prior art keywords
- domain name
- analysis
- record
- resolution
- processed
- 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
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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种域名解析方法和设备,包括:接收外部服务器发送的域名解析请求,所述域名解析请求中包含待处理对象;当所述待处理对象为域名,并确定所述待处理对象不存在于分布式缓存数据库中时,按照不同的域名并行处理的方式,对所述待处理对象进行解析;当所述待处理对象为域名对应的解析记录,并确定所述待处理对象对应的域名存在于分布式缓存数据库中时,按照域名对应的解析记录的生成时间顺序,对所述待处理对象进行生产。这样,在对域名进行解析时,以域名为粒度,对于不同的域名采用并行处理方式,有效地避免由于出现域名解析失败或者无法解析等问题引发域名解析处理流程停滞的问题,有效提升域名解析处理流程的处理效率。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种域名解析方法和设备。
背景技术
随着互联网技术的发展,人们对于互联网中的计算机可以通过网络之间互连的协议(英文:Internet Protocol;缩写:IP)地址进行定位,即在得到一个IP地址时,通过该IP地址可以确定互联网中与该IP地址对应的计算机。
然而,由于IP地址不容易被人们记住,于是提出由域名来代替IP地址。但是,通过域名无法直接访问该域名替代的IP地址对应的计算机。因此,在获取到一个域名时,需要通过域名解析流程,将获取的域名转换为IP地址;利用得到的IP地址访问该IP地址对应的计算机。
域名解析一般依靠域名服务(英文:Domain Name Service;缩写:DNS)系统来完成。DNS系统在进行域名解析时,为每一个有效地域名产生至少一条解析记录,每一条解析记录中包含域名、生存时间、记录类型以及该域名对应的IP地址。
然而,域名解析的时序性要求比较高。具体地,一般的域名解析处理流程包括:首先按照时间和/或设定的域名处理顺序,将获取的域名进行排序;其次按照域名的排序顺序依次对获取的域名进行解析,得到每一个域名对应的解析记录。
但是,在目前的域名解析处理过程中,一旦出现一条域名无法解析或者解析出现问题,将导致域名解析处理流程发生停滞,或者出现该域名之后的大量域名无法进行解析,大大降低域名解析效率。
发明内容
有鉴于此,本申请实施例提供了一种域名解析方法和设备,用于解决现有技术中存在的域名解析效率低的问题。
一种域名解析方法,包括:
接收外部服务器发送的域名解析请求,其中,所述域名解析请求中包含待处理对象;
当所述待处理对象为域名,并确定所述待处理对象不存在于分布式缓存数据库中时,按照不同的域名并行处理的方式,对所述待处理对象进行解析;
当所述待处理对象为域名对应的解析记录,并确定所述待处理对象对应的域名存在于分布式缓存数据库中时,按照域名对应的解析记录的生成时间顺序,对所述待处理对象进行生产。
一种域名解析设备,包括:
接收单元,用于接收外部服务器发送的域名解析请求,其中,所述域名解析请求中包含待处理对象;
解析单元,用于当所述待处理对象为域名,并确定所述待处理对象不存在于分布式缓存数据库中时,按照不同的域名并行处理的方式,对所述待处理对象进行解析;
当所述待处理对象为域名对应的解析记录,并确定所述待处理对象对应的域名存在于分布式缓存数据库中时,按照域名对应的解析记录的生成时间顺序,对所述待处理对象进行生产。
本申请有益效果如下:
本申请实施例接收外部服务器发送的域名解析请求,所述域名解析请求中包含待处理对象;当所述待处理对象为域名,并确定所述待处理对象不存在于分布式缓存数据库中时,按照不同的域名并行处理的方式,对所述待处理对象进行解析;当所述待处理对象为域名对应的解析记录,并确定所述待处理对象对应的域名存在于分布式缓存数据库中时,按照域名对应的解析记录的生成时间顺序,对所述待处理对象进行生产。这样,在对域名进行解析时,以域名为粒度,对于不同的域名采用并行处理方式,有效地避免由于出现域名解析失败或者无法解析等问题引发域名解析处理流程停滞的问题,有效提升域名解析处理流程的处理效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种域名解析方法的流程示意图;
图2为DNS调用所述被锁定的解析记录的流程示意图;
图3为对所述解析队列中的待处理对象再次进行解析的流程示意图;
图4为本申请实施例提供的一种域名解析设备的结构示意图。
具体实施方式
为了实现本申请提高域名解析效率的目的,本申请实施例提供了一种域名解析方法和设备,接收外部服务器发送的域名解析请求,所述域名解析请求中包含待处理对象;当所述待处理对象为域名,并确定所述待处理对象不存在于分布式缓存数据库中时,按照不同的域名并行处理的方式,对所述待处理对象进行解析;当所述待处理对象为域名对应的解析记录,并确定所述待处理对象对应的域名存在于分布式缓存数据库中时,按照域名对应的解析记录的生成时间顺序,对所述待处理对象进行生产。这样,在对域名进行解析时,以域名为粒度,对于不同的域名采用并行处理方式,有效地避免由于出现域名解析失败或者无法解析等问题引发域名解析处理流程停滞的问题,有效提升域名解析处理流程的处理效率。
下面结合说明书附图对本申请各个实施例作进一步地详细描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
图1为本申请实施例提供的一种域名解析方法的流程示意图。所述方法可以如下所述。
步骤101:接收外部服务器发送的域名解析请求。
其中,所述域名解析请求中包含待处理对象。
所述待处理对象中包含域名和/或域名对应的解析记录。
需要说明的是,外部服务器可以是tc_server。
在步骤101中,域名对应的解析记录可以是tc_server对域名进行解析的解析记录。
步骤102:判断待处理对象是否为域名,若待处理对象为域名,则执行步骤103;若待处理对象为域名对应的解析记录,则执行步骤106。
步骤103:进一步确定所述待处理对象是否存在于分布式缓存数据库中,若确定存在于分布式数据库中,则执行步骤104;若确定不存在于分布式数据库中,则执行步骤105。
步骤104:在分布式数据库与所述待处理对象对应的缓存队列中,增加一条与所述待处理对象相关的解析记录,并对所述解析记录执行锁定操作。
其中,所述锁定操作至少包含增加操作、删除操作、修改操作中的一种操作。
步骤105:按照不同的域名并行处理的方式,对所述待处理对象进行解析,跳转执行步骤109。
在步骤105中,按照不同的域名并行处理的方式,在所述分布式缓存数据库中增加一条与所述待处理对象相关的解析记录,并对所述解析记录执行锁定操作。
其中,所述锁定操作至少包含增加操作、删除操作、修改操作中的一种操作。
具体地,在所述分布式缓存数据库中,为所述待处理对象创建缓存队列,该缓存队列用于存放后续接收到的所述待处理对象对应的解析记录。
具体地,增加一条与被调度的所述待处理对象相关的解析记录可以是增加一条以所述待处理对象为关键值的解析记录。
可选地,将增加的该条解析记录的记录状态标注为锁定状态。
步骤106:进一步确定在分布式缓存数据库中与所述待处理对象对应的域名相关的解析记录中是否存在被锁定的解析记录,若存在被锁定的解析记录,则执行步骤107;否则,执行步骤108。
步骤107:当确定存在被锁定的解析记录时,在所述分布式缓存数据库中所述被锁定的解析记录之后增加所述待处理对象,并等待所述被锁定的解析记录被发送至域名服务系统DNS应用接口API进行生产,且在生产成功时,指示所述DNS API直接调度所述待处理对象。
在步骤107中,在所述被锁定的解析记录之后增加所述待处理对象,按照解析记录的生成时间,依次对锁定的解析记录执行生产操作。
在被锁定的解析记录处理完毕之后,直接调用所述被锁定的解析记录之后增加所述待处理对象。
具体地,在所述被锁定的解析记录之后增加所述待处理对象,方式包括:
在所述被锁定的解析记录中,增加一条新的解析记录,该新的解析记录以所述待处理对象对应的域名和缓存(例如:形式为域名_Cache)为关键值。
具体地,DNS调用所述被锁定的解析记录的方式可以包括:
如图2所示,为DNS调用所述被锁定的解析记录的流程示意图。
S21:监听生产队列中包含被锁定的解析记录。
S22:将监听到的所述被锁定的解析记录发送至DNS应用程序编程接口(英文:Application Programming Interface;缩写:API)。
S23:DNS API在接收到被锁定的解析记录时,判断该被锁定的解析记录是否生产成功,若生产成功,则执行S24;否则,执行S27。
在S23中,这里的生产成功可以是指该被锁定的解析记录是符合记录类型要求的解析记录,后续能够比较成功的使用该解析记录。
记录类型一般包含A记录类型、CNAME记录类型、MX记录类型、NS记录类型等,这里不做详细描述。
S24:DNS API在确定该被锁定的解析记录生产成功时,根据该被锁定的解析记录中包含的域名,确定在该被锁定的解析记录中包含的域名中还包含其他解析记录(即待处理对象),直接调用该待处理对象。
需要说明的是,将该待处理对象标注为锁定状态。
S25:DNS API对该待处理对象执行锁定操作。
S26:DNS API在确定锁定操作执行成功时,将锁定操作结果发送至生产队列中,跳转执行步骤111;在确定锁定操作执行失败时,将所述待处理对象再次发送至解析失败队列中,跳转执行步骤110。
S27:DNS API在确定该被锁定的解析记录生产失败时,将所述被锁定的解析记录发送至生产队列中,跳转执行S21。
若在S23中,第二次的判断结果为生产失败,将该解析记录发送至解析失败队列中。
需要说明的是,锁定操作的结果包含锁定操作执行成功和锁定操作执行失败;若锁定操作执行成功,则跳转执行步骤111;若锁定操作执行失败,则跳转执行步骤110。
可选地,若锁定操作执行失败,所述方法还可以包括:触发重复执行该锁定操作,在重复执行该锁定操作的次数达到设定数值时,此时,若锁定操作执行成功,则跳转执行步骤111;若锁定操作执行失败,则跳转执行步骤110。
需要说明的是,设定数值可以根据实际需要确定,也可以根据实验数据确定,例如:设定数值为3,这里对于设定数值的大小不做限定。
步骤108:在分布式缓存数据库中增加一条与所述待处理对象对应的域名相关的解析记录,并对所述解析记录执行锁定操作,跳转执行109。
其中,所述锁定操作至少包含增加操作、删除操作、修改操作中的一种操作。
步骤109:判断锁定操作是否执行成功,在锁定操作执行失败时,执行步骤110,在锁定操作执行成功时,执行步骤111。
步骤110:将执行锁定操作之前的解析记录发送至解析失败队列中,以便于在设定时间内对所述解析失败队列中的解析记录再次进行解析。
其中,所述解析失败队列用于存储解析失败的解析记录。
在步骤110中,对解析失败队列中的解析记录再次进行解析,包括:
根据设定的域名调度顺序和所述解析失败队列中每一个解析记录对应的域名,确定所述解析失败队列中的解析记录被调度的顺序;
针对当前调度的解析记录,确定分布式缓存数据库中是否存在所述解析记录对应的域名;
若分布式缓存数据库中不存在所述解析记录对应的域名,则向所述外部服务器返回域名错误消息;
若分布式缓存数据库中存在所述解析记录对应的域名,则对被调度的所述解析记录执行锁定操作;
当锁定操作执行成功时,将执行锁定操作后得到的解析记录发送至解析记录队列中,以便于域名服务系统DNS调用所述解析记录队列中的解析记录;
当锁定操作执行失败时,将执行锁定操作之前的解析记录发送至解析失败队列中,以便于在设定时间内对所述解析失败队列中的解析记录再次进行解析。
可选地,若锁定操作执行失败,所述方法还可以包括:触发重复执行该锁定操作,在重复执行该锁定操作的次数达到设定数值时,此时,若锁定操作执行成功,则跳转执行步骤111;若锁定操作执行失败,则跳转执行步骤110。
需要说明的是,设定数值可以根据实际需要确定,也可以根据实验数据确定,例如:设定数值为3,这里对于设定数值的大小不做限定。
具体地,在设定时间内对所述解析队列中的待处理对象再次进行解析的方式可以如下所述:
如图3所示,为对所述解析队列中的待处理对象再次进行解析的流程示意图。
S31:根据设定的域名调度顺序,从解析失败队列中依次调度待处理对象。
S32:针对当前调度的所述待处理对象,判断分布式缓存数据库中是否存在所述待处理对象对应的域名,若不存在,则执行S33;否则,执行S34。
S33:若分布式缓存数据库中不存在所述待处理对象对应的域名,则向所述外部服务器返回域名错误消息。
S34:若分布式缓存数据库中存在所述待处理对象对应的域名,则对被调度的所述待处理对象进行解析,并对解析得到的解析记录执行锁定操作。
具体地,对被调度的所述待处理对象进行解析,可以包括:
若分布式缓存数据库中存在所述待处理对象对应的域名,则根据所述待处理对象对应的域名,修改得到一条新的解析记录。其中,该新的解析记录以所述待处理对象对应的域名为关键值,可以通过替换所述待处理对象对应的关键值为域名和缓存的解析记录的关键值得到,同时所述待处理对象对应的关键值为域名和缓存的解析记录的关键值清零。
对解析得到的解析记录执行锁定操作,可以包括:
对得到的新的解析记录执行锁定操作。
其中,所述锁定操作至少包含增加操作、删除操作、修改操作中的一种操作。
当锁定操作执行成功时,将锁定操作后的解析记录发送至解析记录队列中;
当锁定操作执行失败时,将所述待处理对象再次发送至解析失败队列中。
需要说明的是,对得到的新的解析记录执行锁定操作的结果包含锁定操作执行成功和锁定操作执行失败;若锁定操作执行成功,则跳转执行步骤111;若锁定操作执行失败,则跳转执行步骤110。
可选地,若锁定操作执行失败,所述方法还可以包括:触发重复执行该锁定操作,在重复执行该锁定操作的次数达到设定数值时,此时,若锁定操作执行成功,则跳转执行步骤111;若锁定操作执行失败,则跳转执行步骤110。
需要说明的是,设定数值可以根据实际需要确定,也可以根据实验数据确定,例如:设定数值为3,这里对于设定数值的大小不做限定。
步骤111:将锁定操作结果发送至生产队列中,以便于所述DNS API调用所述生产队列中的所述锁定操作结果。
在步骤111中,在成功解析所述待处理对象时,将锁定操作结果发送至生产队列中,以便于所述DNS API调用所述生产队列中的所述锁定操作结果。
通过本申请所述的方案,接收外部服务器发送的域名解析请求,所述域名解析请求中包含待处理对象;当所述待处理对象为域名,并确定所述待处理对象不存在于分布式缓存数据库中时,按照不同的域名并行处理的方式,对所述待处理对象进行解析;当所述待处理对象为域名对应的解析记录,并确定所述待处理对象对应的域名存在于分布式缓存数据库中时,按照域名对应的解析记录的生成时间顺序,对所述待处理对象进行生产。这样,在对域名进行解析时,以域名为粒度,对于不同的域名采用并行处理方式,有效地避免由于出现域名解析失败或者无法解析等问题引发域名解析处理流程停滞的问题,有效提升域名解析处理流程的处理效率。
图4为本申请实施例提供的一种域名解析设备的结构示意图。所述域名解析设备包括:接收单元41和解析单元42,其中:
接收单元41,用于接收外部服务器发送的域名解析请求,其中,所述域名解析请求中包含待处理对象;
解析单元42,用于当所述待处理对象为域名,并确定所述待处理对象不存在于分布式缓存数据库中时,按照不同的域名并行处理的方式,对所述待处理对象进行解析;
当所述待处理对象为域名对应的解析记录,并确定所述待处理对象对应的域名存在于分布式缓存数据库中时,按照域名对应的解析记录的生成时间顺序,对所述待处理对象进行生产。
具体地,所述解析单元42按照不同的域名并行处理的方式,对所述待处理对象进行解析,具体用于:
按照不同的域名并行处理的方式,在所述分布式缓存数据库中增加一条与所述待处理对象相关的解析记录,并对所述解析记录执行锁定操作,其中,所述锁定操作至少包含增加操作、删除操作、修改操作中的一种操作。
具体地,所述解析单元42按照域名对应的解析记录的生成时间顺序,对所述待处理对象进行生产,具体用于:
确定在分布式缓存数据库中与所述待处理对象对应的域名相关的解析记录中是否存在被锁定的解析记录;
当确定存在被锁定的解析记录时,在所述分布式缓存数据库中所述被锁定的解析记录之后增加所述待处理对象,并等待所述被锁定的解析记录被发送至域名服务系统DNS应用接口API进行生产,且在生产成功时,指示所述DNSAPI直接调度所述待处理对象;
当确定不存在被锁定的解析记录时,在分布式缓存数据库中增加一条与所述待处理对象对应的域名相关的解析记录,并对所述解析记录执行锁定操作,其中,所述锁定操作至少包含增加操作、删除操作、修改操作中的一种操作。
可选地,所述域名解析设备还包括:发送单元43,其中:
所述发送单元43,用于在锁定操作执行成功时,将锁定操作结果发送至生产队列中,以便于所述DNS API调用所述生产队列中的所述锁定操作结果;
在锁定操作执行失败时,将锁定执行操作失败的解析记录发送至解析失败队列中,以便于在设定时间内对所述解析失败队列中的解析记录再次进行解析,其中,所述解析失败队列用于存储解析失败的解析记录。
具体地,所述解析单元42对解析失败队列中的解析记录再次进行解析,具体用于:
根据设定的域名调度顺序和所述解析失败队列中每一个解析记录对应的域名,确定所述解析失败队列中的解析记录被调度的顺序;
针对当前调度的解析记录,确定分布式缓存数据库中是否存在所述解析记录对应的域名;
若分布式缓存数据库中不存在所述解析记录对应的域名,则向所述外部服务器返回域名错误消息;
若分布式缓存数据库中存在所述解析记录对应的域名,则对被调度的所述解析记录执行锁定操作;
当锁定操作执行成功时,将执行锁定操作后得到的解析记录发送至解析记录队列中,以便于域名服务系统DNS调用所述解析记录队列中的解析记录;
当锁定操作执行失败时,将执行锁定操作之前的解析记录发送至解析失败队列中,以便于在设定时间内对所述解析失败队列中的解析记录再次进行解析。
需要说明的是,本申请实施例提供的域名解析设备可以通过硬件方式实现,也可以通过软件方式实现,这里不做限定。域名解析设备接收外部服务器发送的域名解析请求,所述域名解析请求中包含待处理对象;当所述待处理对象为域名,并确定所述待处理对象不存在于分布式缓存数据库中时,按照不同的域名并行处理的方式,对所述待处理对象进行解析;当所述待处理对象为域名对应的解析记录,并确定所述待处理对象对应的域名存在于分布式缓存数据库中时,按照域名对应的解析记录的生成时间顺序,对所述待处理对象进行生产。这样,在对域名进行解析时,以域名为粒度,对于不同的域名采用并行处理方式,有效地避免由于出现域名解析失败或者无法解析等问题引发域名解析处理流程停滞的问题,有效提升域名解析处理流程的处理效率。
本领域的技术人员应明白,本申请的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本发明实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种域名解析方法,其特征在于,包括:
接收外部服务器发送的域名解析请求,其中,所述域名解析请求中包含待处理对象;
当所述待处理对象为域名,并确定所述待处理对象不存在于分布式缓存数据库中时,按照不同的域名并行处理的方式,对所述待处理对象进行解析;
当所述待处理对象为域名对应的解析记录,并确定所述待处理对象对应的域名存在于分布式缓存数据库中时,按照域名对应的解析记录的生成时间顺序,对所述待处理对象进行生产。
2.如权利要求1所述的域名解析方法,其特征在于,按照不同的域名并行处理的方式,对所述待处理对象进行解析,包括:
按照不同的域名并行处理的方式,在所述分布式缓存数据库中增加一条与所述待处理对象相关的解析记录,并对所述解析记录执行锁定操作,其中,所述锁定操作至少包含增加操作、删除操作、修改操作中的一种操作。
3.如权利要求1所述的域名解析方法,其特征在于,按照域名对应的解析记录的生成时间顺序,对所述待处理对象进行生产,包括:
确定在分布式缓存数据库中与所述待处理对象对应的域名相关的解析记录中是否存在被锁定的解析记录;
当确定存在被锁定的解析记录时,在所述分布式缓存数据库中所述被锁定的解析记录之后增加所述待处理对象,并等待所述被锁定的解析记录被发送至域名服务系统DNS应用接口API进行生产,且在生产成功时,指示所述DNS API直接调度所述待处理对象;
当确定不存在被锁定的解析记录时,在分布式缓存数据库中增加一条与所述待处理对象对应的域名相关的解析记录,并对所述解析记录执行锁定操作,其中,所述锁定操作至少包含增加操作、删除操作、修改操作中的一种操作。
4.如权利要求2或3所述的域名解析方法,其特征在于,在对所述解析记录执行锁定操作后,所述方法还包括:
在锁定操作执行成功时,将锁定操作结果发送至生产队列中,以便于DNS API调用所述生产队列中的所述锁定操作结果;
在锁定操作执行失败时,将锁定执行操作失败的解析记录发送至解析失败队列中,以便于在设定时间内对所述解析失败队列中的解析记录再次进行解析,其中,所述解析失败队列用于存储解析失败的解析记录。
5.如权利要求1所述的域名解析方法,其特征在于,对解析失败队列中的解析记录再次进行解析,包括:
根据设定的域名调度顺序和所述解析失败队列中每一个解析记录对应的域名,确定所述解析失败队列中的解析记录被调度的顺序;
针对当前调度的解析记录,确定分布式缓存数据库中是否存在所述解析记录对应的域名;
若分布式缓存数据库中不存在所述解析记录对应的域名,则向所述外部服务器返回域名错误消息;
若分布式缓存数据库中存在所述解析记录对应的域名,则对被调度的所述解析记录执行锁定操作;
当锁定操作执行成功时,将执行锁定操作后得到的解析记录发送至解析记录队列中,以便于域名服务系统DNS调用所述解析记录队列中的解析记录;
当锁定操作执行失败时,将执行锁定操作之前的解析记录发送至解析失败队列中,以便于在设定时间内对所述解析失败队列中的解析记录再次进行解析。
6.一种域名解析设备,其特征在于,包括:
接收单元,用于接收外部服务器发送的域名解析请求,其中,所述域名解析请求中包含待处理对象;
解析单元,用于当所述待处理对象为域名,并确定所述待处理对象不存在于分布式缓存数据库中时,按照不同的域名并行处理的方式,对所述待处理对象进行解析;
当所述待处理对象为域名对应的解析记录,并确定所述待处理对象对应的域名存在于分布式缓存数据库中时,按照域名对应的解析记录的生成时间顺序,对所述待处理对象进行生产。
7.如权利要求6所述的域名解析设备,其特征在于,所述解析单元按照不同的域名并行处理的方式,对所述待处理对象进行解析,具体用于:
按照不同的域名并行处理的方式,在所述分布式缓存数据库中增加一条与所述待处理对象相关的解析记录,并对所述解析记录执行锁定操作,其中,所述锁定操作至少包含增加操作、删除操作、修改操作中的一种操作。
8.如权利要求6所述的域名解析设备,其特征在于,所述解析单元按照域名对应的解析记录的生成时间顺序,对所述待处理对象进行生产,具体用于:
确定在分布式缓存数据库中与所述待处理对象对应的域名相关的解析记录中是否存在被锁定的解析记录;
当确定存在被锁定的解析记录时,在所述分布式缓存数据库中所述被锁定的解析记录之后增加所述待处理对象,并等待所述被锁定的解析记录被发送至域名服务系统DNS应用接口API进行生产,且在生产成功时,指示所述DNS API直接调度所述待处理对象;
当确定不存在被锁定的解析记录时,在分布式缓存数据库中增加一条与所述待处理对象对应的域名相关的解析记录,并对所述解析记录执行锁定操作,其中,所述锁定操作至少包含增加操作、删除操作、修改操作中的一种操作。
9.如权利要求7或8所述的域名解析设备,其特征在于,所述域名解析设备还包括:发送单元,其中:
所述发送单元,用于在锁定操作执行成功时,将锁定操作结果发送至生产队列中,以便于DNS API调用所述生产队列中的所述锁定操作结果;
在锁定操作执行失败时,将锁定执行操作失败的解析记录发送至解析失败队列中,以便于在设定时间内对所述解析失败队列中的解析记录再次进行解析,其中,所述解析失败队列用于存储解析失败的解析记录。
10.如权利要求6所述的域名解析设备,其特征在于,所述解析单元对解析失败队列中的解析记录再次进行解析,具体用于:
根据设定的域名调度顺序和所述解析失败队列中每一个解析记录对应的域名,确定所述解析失败队列中的解析记录被调度的顺序;
针对当前调度的解析记录,确定分布式缓存数据库中是否存在所述解析记录对应的域名;
若分布式缓存数据库中不存在所述解析记录对应的域名,则向所述外部服务器返回域名错误消息;
若分布式缓存数据库中存在所述解析记录对应的域名,则对被调度的所述解析记录执行锁定操作;
当锁定操作执行成功时,将执行锁定操作后得到的解析记录发送至解析记录队列中,以便于域名服务系统DNS调用所述解析记录队列中的解析记录;当锁定操作执行失败时,将执行锁定操作之前的解析记录发送至解析失败队列中,以便于在设定时间内对所述解析失败队列中的解析记录再次进行解析。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510229585.9A CN106210159B (zh) | 2015-05-07 | 2015-05-07 | 一种域名解析方法和设备 |
PCT/CN2016/079819 WO2016177284A1 (zh) | 2015-05-07 | 2016-04-21 | 一种域名解析方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510229585.9A CN106210159B (zh) | 2015-05-07 | 2015-05-07 | 一种域名解析方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106210159A CN106210159A (zh) | 2016-12-07 |
CN106210159B true CN106210159B (zh) | 2019-12-13 |
Family
ID=57218081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510229585.9A Active CN106210159B (zh) | 2015-05-07 | 2015-05-07 | 一种域名解析方法和设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN106210159B (zh) |
WO (1) | WO2016177284A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114513487A (zh) * | 2020-10-28 | 2022-05-17 | 武汉斗鱼网络科技有限公司 | 一种加速域名解析的方法、装置、电子设备及计算机可读存储介质 |
CN115378907B (zh) * | 2022-08-18 | 2024-03-15 | 北京视界云天科技有限公司 | Msp域名解析配置管理方法、系统、设备和介质 |
CN115277636B (zh) * | 2022-09-14 | 2023-08-01 | 中国科学院大学 | 一种泛域名解析方法和系统 |
CN115842803A (zh) * | 2022-10-27 | 2023-03-24 | 新浪技术(中国)有限公司 | 文件处理方法、装置及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101170585A (zh) * | 2007-11-13 | 2008-04-30 | 中兴通讯股份有限公司 | 一种域名查询方法 |
CN103327135A (zh) * | 2013-06-27 | 2013-09-25 | 贝壳网际(北京)安全技术有限公司 | 域名解析方法、装置及客户端 |
CN103581349A (zh) * | 2012-07-24 | 2014-02-12 | 腾讯科技(深圳)有限公司 | 一种域名解析方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020087722A1 (en) * | 2000-12-29 | 2002-07-04 | Ragula Systems D/B/A/ Fatpipe Networks | Domain name resolution making IP address selections in response to connection status when multiple connections are present |
US7827280B2 (en) * | 2006-02-28 | 2010-11-02 | Red Hat, Inc. | System and method for domain name filtering through the domain name system |
US9106695B2 (en) * | 2012-03-14 | 2015-08-11 | Daniel Kaminsky | Method and system for user authentication using DNSSEC |
CN103002069A (zh) * | 2012-12-25 | 2013-03-27 | 北京小米科技有限责任公司 | 一种域名解析方法、装置及系统 |
CN103957285B (zh) * | 2014-04-18 | 2015-09-09 | 北京奇虎科技有限公司 | 提供根域名解析服务的方法和系统 |
-
2015
- 2015-05-07 CN CN201510229585.9A patent/CN106210159B/zh active Active
-
2016
- 2016-04-21 WO PCT/CN2016/079819 patent/WO2016177284A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101170585A (zh) * | 2007-11-13 | 2008-04-30 | 中兴通讯股份有限公司 | 一种域名查询方法 |
CN103581349A (zh) * | 2012-07-24 | 2014-02-12 | 腾讯科技(深圳)有限公司 | 一种域名解析方法及装置 |
CN103327135A (zh) * | 2013-06-27 | 2013-09-25 | 贝壳网际(北京)安全技术有限公司 | 域名解析方法、装置及客户端 |
Also Published As
Publication number | Publication date |
---|---|
CN106210159A (zh) | 2016-12-07 |
WO2016177284A1 (zh) | 2016-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11755371B1 (en) | Data intake and query system with distributed data acquisition, indexing and search | |
US9720753B2 (en) | CloudSeer: using logs to detect errors in the cloud infrastructure | |
US10089323B2 (en) | Telemetry system for a cloud synchronization system | |
US20180359331A1 (en) | Data Cloud Storage System, Client Terminal, Storage Server and Application Method | |
CN106210159B (zh) | 一种域名解析方法和设备 | |
CN109800160B (zh) | 机器学习系统中的集群服务器故障测试方法和相关装置 | |
US10943010B2 (en) | Generation of a random value for a child process | |
CN104219316A (zh) | 一种分布式系统中的调用请求处理方法及装置 | |
CN107888446B (zh) | 一种协议健壮性测试方法及装置 | |
CN105095367B (zh) | 一种客户端数据的采集方法和装置 | |
CN106936659B (zh) | 一种公有云的拨测方法和装置 | |
CN107688489B (zh) | 一种调度任务的方法和系统 | |
CN104967630A (zh) | 网页访问请求的处理方法及装置 | |
CN112154420A (zh) | 自动智能云服务测试工具 | |
CN106888277A (zh) | 一种域名查询方法及装置 | |
CN108650093A (zh) | 一种基于幂等性的接口实现方法 | |
CN109257396B (zh) | 一种分布式锁调度方法及装置 | |
CN110830500B (zh) | 网络攻击追踪方法、装置、电子设备及可读存储介质 | |
CN112165451A (zh) | Apt攻击分析方法、系统及服务器 | |
CN109495350B (zh) | 局数据的核查方法、装置和存储介质 | |
CN108846085B (zh) | 一种id生成方法、装置、电子设备及系统 | |
EP2224381A1 (en) | Method and apparatus for case-based service composition | |
CN116501997B (zh) | 短链接生成方法、装置、电子设备及存储介质 | |
CN106559278B (zh) | 数据处理状态监控方法和装置 | |
CN109298928B (zh) | 业务的处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |