一种服务器、数据处理方法及介质与流程

文档序号:24061653发布日期:2021-02-26 16:36阅读:79来源:国知局
一种服务器、数据处理方法及介质与流程

[0001]
本申请涉及计算机通信领域,尤其涉及一种服务器、数据处理方法、装置及介质。


背景技术:

[0002]
现有技术中,dns服务器保存了ip地址等解析结果与域名的对应关系,根据该解析结果与域名的对应关系,可以确定接收到的解析请求中携带的域名所对应目标解析结果,从而将该目标解析结果反馈给用户的智能设备。
[0003]
实际应用场景中,图1为现有服务器处理域名的场景示意图。如图1所示,用户的智能设备向网络运营商提供的或是其他公共的服务器发起解析请求,例如,查询www.example.com的ip地址的解析请求,服务器接收到该解析请求后,获取该解析请求中携带的域名,根据该域名查询是否保存有该域名对应的解析结果。若保存了该域名对应的解析结果且该解析结果对应的有效期未到期,则服务器将获取的解析结果发送至智能设备;否则,将解析请求转发至预先配置的其他服务器,比如递归dns服务器、通过其他dns服务器迭代转发给根服务器、通过其他dns服务器迭代转发给各级权威服务器,以获得其他服务器对该解析请求中携带的域名的解析结果,将获取的解析结果发送至智能设备,并本地缓存该域名及其对应的解析结果,以方便后续再次接收到携带有该域名的解析请求时,可以直接将缓存的该域名对应的解析结果发送至智能设备,提高对智能设备的响应效率。
[0004]
其中,其他服务器在反馈解析结果时,还会反馈该解析结果对应的有效期(ttl),当再次接收到智能设备发送的携带有该域名的解析请求时,服务器在确定该域名对应的解析结果超出该有效期后,会将该域名对应的解析结果视为无效,需要重新向其他服务器查询该域名对应的解析结果,并将其他服务器发送的该域名对应的解析结果发送至智能设备。
[0005]
对于上述的处理方法,当出现服务器缓存的某一域名对应的解析结果到期,且其他服务器出现故障,则该服务器将无法及时获取到其他服务器反馈的该域名的解析结果,一直等待其他服务器反馈的该域名的解析结果,进而导致服务器无法及时响应该解析请求,降低服务器的响应效率以及用户体验。


技术实现要素:

[0006]
本申请提供了一种服务器、数据处理方法、装置及介质,用以解决现有服务器无法及时响应解析请求,降低服务器的响应效率以及用户体验的问题。
[0007]
第一方面,本申请提供了一种数据处理方法,所述方法包括:
[0008]
接收第一解析请求,并获取所述第一解析请求中携带的域名的信息;
[0009]
确定本地缓存有所述域名对应的目标解析结果,且所述目标解析结果对应的有效期已到期,则向其他服务器转发所述第一解析请求;
[0010]
确定在预设第一时长内未接收到所述其他服务器发送的所述域名的解析结果,发送所述目标解析结果。
[0011]
第二方面,本申请提供了一种服务器,所述服务器包括:
[0012]
通信器,所述通信器用于与其他服务器建立通信连接;
[0013]
控制器,所述控制器用于执行:
[0014]
控制所述通信器接收第一解析请求,并获取所述第一解析请求中携带的域名的信息;确定本地缓存有所述域名对应的目标解析结果,且所述目标解析结果对应的有效期已到期,则控制所述通信器向所述其他服务器发送所述第一解析请求;确定在预设第一时长内未通过所述通信器接收到所述其他服务器发送的所述域名的解析结果,控制所述通信器发送所述目标解析结果。
[0015]
第三方面,本申请提供了一种数据处理装置,所述装置包括:
[0016]
接收单元,用于接收第一解析请求,并获取所述第一解析请求中携带的域名的信息;
[0017]
第一处理单元,用于确定本地缓存有所述域名对应的目标解析结果,且所述目标解析结果对应的有效期已到期,则向其他服务器转发所述第一解析请求;
[0018]
第二处理单元,用于确定在预设第一时长内未接收到所述其他服务器发送的所述域名的解析结果,发送所述目标解析结果。
[0019]
第四方面,本申请提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述数据处理方法的步骤。
[0020]
由于本申请中预设有第一时长,服务器在确定本地缓存有接收到的第一解析请求中携带的域名所对应的目标解析结果,并确定该目标解析结果对应的有效期已到期的情况下,先向其他服务器转发接收到的第一解析请求,当确定在预设第一时长内未接收到其他服务器发送的该域名的解析结果后,便先发送缓存的目标解析结果,从而避免一直等待其他服务器发送该域名的解析结果所耗费的时间,并实现可以在预设第一时长内及时响应第一解析请求,提高服务器的响应效率以及用户体验。
附图说明
[0021]
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0022]
图1为现有服务器处理域名的场景示意图;
[0023]
图2本申请一些实施例提供的一种数据处理过程示意图;
[0024]
图3为现有的数据处理流程示意图;
[0025]
图4为本申请一些实施例提供的具体的数据处理流程示意图;
[0026]
图5为本申请一些实施例提供的一种服务器的结构示意图;
[0027]
图6为本申请一些实施例提供的一种数据处理装置的结构示意图。
具体实施方式
[0028]
为了提高服务器对解析请求的响应效率,并提高用户体验,本申请提供了一种服务器、数据处理方法、装置及介质。
[0029]
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步的详细描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
[0030]
在实际使用过程中,用户的智能设备向网络运营商提供的或是其他公共的服务器发起解析请求,例如,查询www.example.com的ip地址的解析请求。当服务器接收到智能设备发送的对某一域名进行解析的解析请求之后,对该解析请求进行相应的处理,获取该解析请求中携带的域名的信息。为了实现将一些域名对应的解析结果快速转发给智能设备,服务器预先缓存了一些域名对应的解析结果及其对应的有效期,当获取到解析请求中的解析结果之后,将该域名与已缓存有解析结果的域名进行匹配,当存在匹配的域名时,确定该匹配的域名所对应的目标解析结果对应的有效期是否到期,若确定该目标解析结果对应的有效期已到期,则可以先向其他服务器发送该解析结果。根据是否在预设第一时长内接收到其他服务器发送的该域名的解析结果,确定是否直接发送目标解析结果。
[0031]
图2本申请一些实施例提供的一种数据处理过程示意图,该过程包括:
[0032]
s201:接收第一解析请求,并获取所述第一解析请求中携带的域名的信息。
[0033]
在本申请中,本申请提供的数据处理方法应用于服务器。
[0034]
在实际应用过程中,当用户希望通过某一注册的域名访问到某一网站时,可以通过输入域名获取到某一网站的某一页面的ip地址,从而实现访问某一网站的目的。而智能设备接收到用户输入的域名之后,会根据该域名生成对应的第一解析请求,并将生成的第一解析请求发送至网络运营商提供的或是其他公共的服务器。后续服务器接收到第一解析请求之后,通过相应的处理,获取该第一解析请求中携带的域名的信息。然后基于本申请提供的数据处理方法,对该域名的信息进行相应的处理,从而实现对第一解析请求进行响应。
[0035]
其中,服务器接收到的第一解析请求可以是智能设备发送的解析请求,也可以是下级服务器转发的智能设备发送的解析请求。
[0036]
s202:确定本地缓存有所述域名对应的目标解析结果,且所述目标解析结果对应的有效期已到期,则向其他服务器转发所述第一解析请求。
[0037]
s203:确定在预设第一时长内未接收到所述其他服务器发送的所述域名的解析结果,发送所述目标解析结果。
[0038]
在实际应用场景下,修改域名所对应的解析结果的情况是相对较少发生的,比如,修改某一域名对应的ip地址等,使得重新查询其他服务器得到的对该域名的解析结果多数情况下也是与之前相同的。因此,为了方便后续智能设备及时获取已访问过的域名的解析结果,服务器可以将接收到的其他服务器发送的某一域名的解析结果进行缓存,以便后续再次接收到携带有该域名的第二解析请求时,直接发送本地缓存的该域名的解析结果,提高响应解析请求的效率。
[0039]
为了服务器可以在某一域名的解析结果发生变化时,不再继续发送本地缓存的该域名对应的目标解析结果,即发送错误的解析结果,影响智能设备进行后续的业务的访问,其他服务器在给服务器发送任一域名的解析结果时,还会发送该解析结果对应的有效期。服务器接收到该域名的解析结果以及该解析结果对应的有效期之后,将该域名的解析结果、接收到该解析结果的时间以及该解析结果对应的有效期缓存,并在后续智能设备请求
该域名的解析结果时,根据接收到该解析请求的时间以及该解析结果对应的有效期,确定该域名的解析结果对应的有效期是否到期,从而可以在该解析结果对应的有效期已到期时,向其他服务器转发接收到的第一解析请求,以根据其他服务器发送的域名的解析结果,对本地缓存的该域名对应的解析结果进行更新。
[0040]
其中,在根据接收到该解析请求的时间以及该解析结果对应的有效期,确定该域名的解析结果对应的有效期是否到期的方法包括:
[0041]
方法一、在接收到该解析结果时开始计时。后续判断接收到解析请求时计时器所记录的时长是否大于该解析结果对应的有效期,确定该域名的解析结果对应的有效期是否到期。若大于,则确定该域名的解析结果对应的有效期已到期;否则,确定该域名的解析结果对应的有效期未到期。
[0042]
方法二、在接收到该解析结果时,从该解析结果对应的有效期开始倒计时。后续判断接收到解析请求时,计时器所记录的剩余时长是否为0,确定该域名的解析结果对应的有效期是否到期。若是,则确定该域名的解析结果对应的有效期已到期;否则,确定该域名的解析结果对应的有效期未到期。
[0043]
方法三、在接收到该解析结果时,根据当前接收到该解析结果的时间、以及该解析结果对应的有效期,确定有效时间范围。后续判断接收到解析请求时的时间是否在该有效时间范围内,确定该域名的解析结果对应的有效期是否到期。若是,则确定该域名的解析结果对应的有效期已到期;否则,确定该域名的解析结果对应的有效期未到期。
[0044]
对于上述的方法,一旦其他服务器出现故障,或者拒绝服务器访问,则容易造成服务器一直等待其他服务器反馈该域名的解析结果,从而无法继续响应该用户的第一解析请求,进而对用户后续业务的访问造成影响。
[0045]
在一种可能的实施方式中,为了可以及时响应第一解析请求,在获取到第一解析请求中携带的域名的信息之后,将该域名与已缓存有解析结果的域名进行匹配,当存在匹配的域名时,确定该匹配的域名所对应的目标解析结果对应的有效期是否到期,若确定该目标解析结果对应的有效期已到期,则发送该目标解析结果,并将第一解析请求转发至其他服务器,来更新当前本地缓存的该目标解析结果及该目标解析结果对应的有效期。
[0046]
通过上述的方法,虽然可以使服务器及时对用户的第一解析请求进行响应,且多数情况下该服务器本地缓存的目标解析结果也是正确的,但一旦遇到某一域名的解析结果发生变化,且其他服务器是可以正常响应的情况,则服务器直接发送本地缓存的该域名对应的目标解析结果,会使得智能设备按照该目标解析结果进行后续的业务处理,影响用户后续的业务访问。因此,为了可以及时响应第一解析请求,并尽可能地保证向智能设备发送的域名的解析结果的准确性,在本申请中,在确定本地缓存有某一域名对应的目标解析结果,且该目标解析结果对应的有效期已到期之后,先将该第一解析请求转发至其他服务器,根据预设第一时长内是否接收到其他服务器发送的该域名的解析结果,从而确定如何响应该智能设备的第一解析请求。
[0047]
具体实施过程中,若确定在预设第一时长内未接收到该其他服务器发送的该域名的解析结果,说明可能出现网络延迟、或者其他服务器发生故障等情况,则先发送目标解析结果。
[0048]
其中,若第一解析请求是智能设备发送的,则确定在预设第一时长内未接收到该
其他服务器发送的该域名的解析结果时,将目标解析结果发送至智能设备;若第一解析结果是下级服务器转发的,则确定在预设第一时长内未接收到该其他服务器发送的该域名的解析结果时,将目标解析结果发送至下级服务器。
[0049]
s204:若确定在预设第一时长内接收到所述其他服务器发送的所述域名的解析结果,则发送所述域名的解析结果。
[0050]
在一种可能的实施方式中,为了保证服务器响应第一解析请求的准确性,在本申请中,若确定在预设第一时长内接收到其他服务器发送的该域名的解析结果,说明当前其他服务器正常工作,为了保证准确地响应该第一解析请求,则发送接收到的其他服务器发送的该域名的解析结果。
[0051]
其中,若第一解析请求是智能设备发送的,则确定在预设第一时长内接收到该其他服务器发送的该域名的解析结果时,将该域名的解析结果发送至智能设备;若第一解析结果是下级服务器转发的,则确定在预设第一时长内接收到该其他服务器发送的该域名的解析结果时,将该域名的解析结果发送至下级服务器。
[0052]
在本申请中,在设置第一时长时,可以根据经验确定,也可以是根据场景的不同,设置不同的值。如果希望保证服务器响应第一解析请求的效率,则可以将该预设第一时长设置的短一些,如果希望避免由于第一时长设置的过短,从而无法发送其他服务器正常发送的域名的解析结果,则可以将该预设第一时长设置的长一些。较佳的,可以根据统计的各个其他服务器与该服务器进行正常交互的时长进行设置。
[0053]
由于本申请中预设有第一时长,服务器在确定本地缓存有接收到的第一解析请求中携带的域名所对应的目标解析结果,并确定该目标解析结果对应的有效期已到期的情况下,先向其他服务器转发接收到的第一解析请求,当确定在预设第一时长内未接收到其他服务器发送的该域名的解析结果后,便先发送缓存的目标解析结果,从而避免一直等待其他服务器发送该域名的解析结果所耗费的时间,并实现可以在预设第一时长内及时响应第一解析请求,提高服务器的响应效率以及用户体验。
[0054]
为了准确地确定其他服务器是否可能出现故障,在上述实施例的基础上,在本申请中,确定在预设第一时长内未接收到所述其他服务器发送的所述域名的解析结果,包括:
[0055]
在所述预设第一时长内接收到所述其他服务器发送的失败响应信息;或
[0056]
在所述预设第一时长内未接收到所述其他服务器发送的响应信息,所述响应信息为成功响应信息,或失败响应信息,其中,所述成功响应信息中携带有所述域名的解析结果。
[0057]
在实际应用场景中,可能出现网络延迟、其他服务器故障等情况,使得服务器在预设第一时长内无法接收到其他服务器发送的域名的解析结果。具体的,当出现网络延迟时,可能会造成其他服务器与服务器之间的通信延迟,使得服务器无法在预设第一时长内接收到其他服务器发送的该域名的解析结果;当出现网络故障时,会使其他服务器与该服务器之间无法建立通信连接,使得服务器也无法在预设第一时长内接收到其他服务器发送的该域名的解析结果;当其他服务器出现故障时,可能造成服务器无法在预设第一时长内接收到其他服务器发送的该域名的解析结果或者接收到其他服务器发送的失败响应信息,比如,servfail、refused等。基于此,在本申请中,服务器确定在预设第一时长内未接收到其他服务器发送的域名的解析结果,包括如下情况:
[0058]
情况一、若在预设第一时长内接收到其他服务器发送的失败响应信息,说明其他服务器可能出现故障,且暂时无法恢复,则确定在预设第一时长内未接收到其他服务器发送的域名的解析结果。
[0059]
情况二、若在预设第一时长内未接收到其他服务器发送的响应信息,即未能在预设第一时长内接收到其他服务器发送的成功响应信息或者失败响应信息,则确定在预设第一时长内未接收到其他服务器发送的域名的解析结果。
[0060]
其中,成功响应信息中携带有该域名的解析结果,比如,noerror、nxdomain等。
[0061]
当基于上述的情况,确定当前在预设第一时长内未接收到其他服务器发送的域名的解析结果之后,服务器直接发送本地缓存的目标解析结果。
[0062]
进一步地,可能出现网络延迟,或者其他服务器处理任务较多导致未能在预设第一时长内处理服务器发送的第一解析请求等情况,使得服务器无法在预设第一时长内接收到其他服务器发送的域名的解析结果,而在发送了本地缓存的目标解析结果之后,又接收到了其他服务器发送的该域名的解析结果。为了保证智能设备后续再次对该域名进行第一解析请求时,服务器对该第一解析请求响应的准确性,服务器发送了本地缓存的目标解析结果之后,若接收到了其他服务器发送的该域名的解析结果,则会根据当前接收到的其他服务器发送的该域名的解析结果,对本地缓存的该域名对应的目标解析结果进行更新。具体的,发送所述目标解析结果之后,所述方法还包括:
[0063]
接收到所述其他服务器发送的所述域名的解析结果时,根据所述解析结果对所述目标解析结果进行更新。
[0064]
在实际应用场景中,其他服务器在向服务器发送域名的解析结果时,一般还会向服务器发送该解析结果对应的有效期,以便服务器可以监控该解析结果的更新时间,及时向其他服务器请求该域名的解析结果,从而根据其他服务器发送的该域名的解析结果对本地缓存的目标解析结果进行更新,提高后续响应该域名的解析请求的准确性。因此,在本申请中,接收到域名对应的解析结果以及该解析结果对应的有效期之后,根据该解析结果对目标解析结果进行更新,并根据该解析结果对应的有效期对目标解析结果对应的有效期进行更新。具体的,所述接收到所述其他服务器发送的所述域名的解析结果,包括:
[0065]
接收到所述域名对应的解析结果以及所述解析结果对应的有效期;
[0066]
所述根据所述解析结果对所述目标解析结果进行更新,包括:
[0067]
根据所述解析结果对所述目标解析结果进行更新,并根据所述解析结果对应的有效期对所述目标解析结果对应的有效期进行更新。
[0068]
为了及时对目标解析结果进行更新,在上述各实施例的基础上,在本申请中,所述接收到所述其他服务器发送的所述域名的解析结果,包括:
[0069]
在预设第二时长内接收到所述其他服务器发送的所述域名的解析结果;或
[0070]
确定在预设第二时长内未接收到所述其他服务器发送的所述域名的解析结果,按照预设时间间隔向所述其他服务器发送所述第一解析请求,直至接收到所述其他服务器发送的所述域名的解析结果。
[0071]
在实际应用场景中,由于可能出现网络延迟、或者当前其他服务器处理的任务较多未能在预设第一时长内处理了该第一解析请求,但当网络不延迟了,或者其他服务器处理完该第一解析请求了,服务器无需再次向其他服务器发送第一解析请求,也还是可以接
收到其他服务器发送的该域名的解析结果的。因此,为了避免服务器频繁向其他服务器转发第一解析请求,在本申请中,预设有第二时长。服务器可以在预设第一时长内未接收到其他服务器发送的域名的解析结果之后,判断在第二预设时长内是否接收到其他服务器发送的该域名的解析结果。若在第二预设时长内接收到其他服务器发送的该域名的解析结果,则直接根据接收到的域名的解析结果对本地缓存的目标解析结果进行更新。
[0072]
在一种可能的实施方式中,可能出现网络故障、其他服务器故障等情况,使得其他服务器无法正常接收到服务器转发的第一解析请求,或者向服务器发送域名的解析结果,因此,为了及时获取到其他服务器发送该域名的解析结果,提高后续响应携带有该域名的第一解析请求的准确性,在本申请中,若在第二预设时长内未接收到其他服务器发送的该域名的解析结果,则不再等待其他服务器对上一次转发的第一解析请求中携带的域名所发送的解析结果,按照预设时间间隔向其他服务器转发第一解析请求,直至接收到其他服务器发送的该域名的解析结果,从而根据该接收到的域名的解析结果,对本地缓存的目标解析结果进行更新。
[0073]
若在预设第二时长内未接收到所述其他服务器发送的所述域名的解析结果,所述方法还包括:
[0074]
在预设第三时长内接收到携带有所述域名的第二解析请求,则直接发送所述目标解析结果。
[0075]
在另一种可能的实施方式中,为了避免频繁向其他服务器转发第一解析请求,造成其他服务器负载压力大的情况,在预设第二时长内未接收到其他服务器发送的域名的解析结果之后,若服务器在该预设第二时长之后的一段时间内再次接收到携带有该域名的第二解析请求,则不再向其他服务器转发该第二解析请求,直接发送本地缓存的该域名对应的目标解析结果。因此,在本申请中,预设有第三时长。在预设第二时长内未接收到其他服务器发送的域名的解析结果之后,若在预设第三时长内接收到携带有该域名的第二解析请求,则直接发送本地缓存的目标解析结果。
[0076]
服务器在接收到其他服务器发送的域名的解析结果的同时,还会接收到其他服务器发送的该解析结果对应的有效期,服务器根据该接收到的域名的解析结果,对本地缓存的目标解析结果进行更新,并根据接收到的该解析结果对应的有效期,对本地缓存的目标解析结果对应的有效期进行更新。
[0077]
需要说明的是,在本申请中,在设置第二时长时,可以根据经验确定,也可以是根据场景的不同,设置不同的值。如果希望减少耗费在等待其他服务器发送该域名的解析结果的时间,则可以将该预设第二时长设置的短一些,如果希望减少频繁向其他服务器转发第一解析请求的次数,则可以将该预设第二时长设置的长一些。
[0078]
在设置第三时长时,可以根据经验确定,也可以是根据场景的不同,设置不同的值。如果对域名的解析结果有严格的要求,则可以将该预设第三时长设置的短一些,如果希望减少频繁向其他服务器转发第二解析请求的次数,则可以将该预设第三时长设置的长一些。
[0079]
同样的,在设置时间间隔时,也可以根据经验确定,也可以是根据场景的不同,设置不同的值。如果希望尽可能的及时获取到其他服务器发送该域名的解析结果,则可以将该时间间隔设置的短一些,如果希望减少频繁向其他服务器转发第一解析请求的次数,则
可以将该时间间隔设置的长一些。
[0080]
在另一种可能的实施方式中,可能出现服务器第一次接收到对某一域名的解析请求,则该服务器本地不会缓存有该域名对应的目标解析结果,为了响应智能设备发送的解析请求,服务器需要向其他服务器转发该解析请求,以获取其他服务器发送的该解析请求中携带的域名的解析结果,发送接收到的该域名的解析结果,并将该域名及其对应的解析结果缓存在本地。
[0081]
服务器在接收到其他服务器发送的域名的解析结果的同时,还会接收到其他服务器发送的该解析结果对应的有效期,服务器将该域名、该域名的解析结果、以及该解析结果对应的有效期缓存在本地。
[0082]
其中,在设置有效期时,可以根据场景的不同,设置不同时长的有效期。如果为了严格保证向智能设备发送的某一域名的解析结果的准确性,则可以将该域名的有效期设置的短一些,以使服务器可以频繁对本地缓存的某一域名对应的目标解析结果进行更新;如果希望有效降低服务器向其他服务器转发解析请求分析的频率,降低其他服务器处理解析请求时的负载,提高服务性能,处理更多的解析请求,则可以将该域名的有效期设置的长一些。
[0083]
同样的,确定在预设第一时长内未接收到其他服务器发送的该域名的解析结果,服务器在发送目标解析结果时,也会将预先配置的时间段发送至接收设备(包括智能设备和下级服务器),即将该预先配置的时间段作为该目标解析结果对应的有效期发送至接收设备,以使接收设备根据该目标解析结果以及该预先配置的时间段,对本地缓存的该域名的解析结果以及该解析结果对应的有效期进行更新。
[0084]
需要说明的是,该预先配置的时间段的设置方法与上述有效期的设置方法相同,重复之处不做赘述。
[0085]
此外,若确定本地缓存有该域名对应的目标解析结果,且所述目标解析结果对应的有效期未到期,所述方法还包括:
[0086]
发送所述目标解析结果。
[0087]
当然,服务器确定本地缓存有该域名对应的目标解析结果后,该目标解析结果对应的有效期未到期,则服务器直接发送该目标解析结果即可,无需向其他服务器请求该解析请求中携带的域名的解析结果,从而根据接收到的解析结果对本地缓存的目标解析结果进行更新。
[0088]
图3为现有的数据处理流程示意图,该流程包括:
[0089]
s301:接收第一解析请求,并获取该第一解析请求中携带的域名的信息。
[0090]
s302:判断本地是否缓存有该域名对应的目标解析结果,若是,则执行s303,否则,执行s304。
[0091]
s303:判断该目标解析结果对应的有效期是否已到期,若是,则执行s304,否则,执行s308。
[0092]
s304:向其他服务器转发该解析请求。
[0093]
s305:判断是否接收到其他服务器发送的成功响应信息,若是,则执行s306,否则执行s307。
[0094]
s306:发送该成功响应信息中携带的该域名的解析结果并缓存该成功响应信息。
[0095]
其中,若本地缓存有该域名对应的目标解析结果,则根据该成功响应信息中携带的该域名的解析结果,对目标解析结果进行更新,并根据该成功响应信息中携带的该解析结果对应的有效期,对目标解析结果对应的有效期进行更新;若本地未缓存有该域名对应的目标解析结果,则直接将该成功响应信息中携带的该域名的解析结果以及该解析结果对应的有效期保存。
[0096]
s307:继续等待,直至接收到其他服务器发送成功响应信息,然后执行s306。
[0097]
s308:直接发送缓存的目标解析结果。
[0098]
为了方便说明本申请提供的数据处理方法,下面通过具体的实施例进行说明:
[0099]
图4为本申请一些实施例提供的具体的数据处理流程示意图,该流程包括:
[0100]
s401:接收第一解析请求,并获取该第一解析请求中携带的域名的信息。
[0101]
s402:判断本地是否缓存有该域名对应的目标解析结果,若是,则执行s403,否则,执行s412。
[0102]
s403:判断该目标解析结果对应的有效期是否已到期,若是,则执行s404,否则,执行s414。
[0103]
s404:向其他服务器转发该第一解析请求。
[0104]
s405:判断是否在预设第一时长内接收到该其他服务器发送的响应信息,若是,则执行s406,否则,执行s408。
[0105]
s406:判断该响应信息是否为成功响应信息,若是,则执行s407,否则,执行s408。
[0106]
s407:将成功响应信息中携带的域名的解析结果发送,并根据该解析结果,对目标解析结果进行更新,根据成功响应信息中携带的该解析结果对应的有效期,对目标解析结果对应的有效期进行更新。
[0107]
s408:发送该目标解析结果。
[0108]
s409:判断是否在预设第二时长内接收到该其他服务器发送的成功响应信息,若是,则执行s410,否则,执行s411。
[0109]
s410:根据成功响应结果中携带的解析结果,对目标解析结果进行更新,根据成功响应信息中携带的该解析结果对应的有效期,对目标解析结果对应的有效期进行更新。
[0110]
s411:在预设第三时长内接收到携带有所述域名的第二解析请求,则直接发送所述目标解析结果。
[0111]
s412:向其他服务器转发该解析请求。
[0112]
s413:接收其他服务器发送的成功响应信息,将该成功响应信息中携带的该域名的解析结果以及该解析结果对应的有效期保存,并发送该域名的解析结果。
[0113]
s414:发送该目标解析结果。
[0114]
本申请还提供可以一种服务器,图5为本申请一些实施例提供的一种服务器的结构示意图,该服务器包括:
[0115]
通信器51,所述通信器用于与其他服务器建立通信连接;
[0116]
控制器52,所述控制器用于执行:
[0117]
控制所述通信器51接收第一解析请求,并获取所述第一解析请求中携带的域名的信息;确定本地缓存有所述域名对应的目标解析结果,且所述目标解析结果对应的有效期已到期,则控制所述通信器51向所述其他服务器发送所述第一解析请求;确定在预设第一
时长内未通过所述通信器51接收到所述其他服务器发送的所述域名的解析结果,控制所述通信器51发送所述目标解析结果。
[0118]
本申请提供的服务器解决问题的原理与上述实施例中的数据处理方法解决问题的原理相同,具体参见上述实施例,重复之处不做赘述。
[0119]
在某些可能的实施方式中,所述控制器52用于执行:
[0120]
在所述预设第一时长内通过所述通信器51接收到所述其他服务器发送的失败响应信息;或
[0121]
在所述预设第一时长内未通过所述通信器51接收到所述其他服务器发送的响应信息,所述响应信息为成功响应信息,或失败响应信息,其中,所述成功响应信息中携带有所述域名的解析结果。
[0122]
在某些可能的实施方式中,所述控制器52用于执行:
[0123]
通过所述通信器51发送所述目标解析结果之后,通过所述通信器51接收到所述其他服务器发送的所述域名的解析结果时,根据所述解析结果对所述目标解析结果进行更新。
[0124]
在某些可能的实施方式中,所述控制器52用于执行:
[0125]
通过所述通信器51接收到所述域名对应的解析结果以及所述解析结果对应的有效期;根据所述解析结果对所述目标解析结果进行更新,并根据所述解析结果对应的有效期对所述目标解析结果对应的有效期进行更新。
[0126]
在某些可能的实施方式中,所述控制器52用于执行:
[0127]
在预设第二时长内通过所述通信器51接收到所述其他服务器发送的所述域名的解析结果;或
[0128]
确定在预设第二时长内未通过所述通信器51接收到所述其他服务器发送的所述域名的解析结果,按照预设时间间隔通过所述通信器51向所述其他服务器发送所述第一解析请求,直至通过所述通信器51接收到所述其他服务器发送的所述域名的解析结果。
[0129]
在某些可能的实施方式中,所述控制器52用于执行:
[0130]
若在预设第二时长内未接收到所述其他服务器发送的所述域名的解析结果,在预设第三时长内通过所述通信器51接收到携带有所述域名的第二解析请求,则直接通过所述通信器51发送所述目标解析结果。
[0131]
在某些可能的实施方式中,所述控制器52用于执行:
[0132]
通过所述通信器51发送所述目标解析结果及预先配置的时间段。
[0133]
在某些可能的实施方式中,所述控制器52用于执行:
[0134]
若确定在预设第一时长内接收到所述其他服务器发送的所述域名的解析结果,则发送所述域名的解析结果。
[0135]
由于本申请中预设有第一时长,服务器在确定本地缓存有接收到的第一解析请求中携带的域名所对应的目标解析结果,并确定该目标解析结果对应的有效期已到期的情况下,先向其他服务器转发接收到的第一解析请求,当确定在预设第一时长内未接收到其他服务器发送的该域名的解析结果后,便先发送缓存的目标解析结果,从而避免一直等待其他服务器发送该域名的解析结果所耗费的时间,并实现可以在预设第一时长内及时响应第一解析请求,提高服务器的响应效率以及用户体验。
[0136]
本申请还提供了一种数据处理装置,图6为本申请一些实施例提供的一种数据处理装置的结构示意图,该装置包括:
[0137]
接收单元61,用于接收智能设备发送的第一解析请求,并获取所述第一解析请求中携带的域名的信息;
[0138]
第一处理单元62,用于确定本地缓存有所述域名对应的目标解析结果,且所述目标解析结果对应的有效期已到期,则向其他服务器转发所述第一解析请求;
[0139]
第二处理单元63,用于确定在预设第一时长内未接收到所述其他服务器发送的所述域名的解析结果,发送所述目标解析结果。
[0140]
在某些可能的实施方式中,所述第二处理单元63,具体用于在所述预设第一时长内接收到所述其他服务器发送的失败响应信息;或,在所述预设第一时长内未接收到所述其他服务器发送的响应信息,所述响应信息为成功响应信息,或失败响应信息,其中,所述成功响应信息中携带有所述域名的解析结果。
[0141]
在某些可能的实施方式中,所述接收单元61,还用于发送所述目标解析结果之后,接收所述其他服务器发送的所述域名的解析结果;
[0142]
所述装置还包括:
[0143]
更新单元,用于根据接收到的所述解析结果对所述目标解析结果进行更新。
[0144]
在某些可能的实施方式中,所述接收单元61,具体用于接收到所述域名对应的解析结果以及所述解析结果对应的有效期;
[0145]
所述更新单元,具体用于根据所述解析结果对所述目标解析结果进行更新,并根据所述解析结果对应的有效期对所述目标解析结果对应的有效期进行更新。
[0146]
在某些可能的实施方式中,所述接收单元61,具体用于在预设第二时长内接收到所述其他服务器发送的所述域名的解析结果;或,确定在预设第二时长内未接收到所述其他服务器发送的所述域名的解析结果,按照预设时间间隔向所述其他服务器发送所述第一解析请求,直至接收到所述其他服务器发送的所述域名的解析结果。
[0147]
在某些可能的实施方式中,所述第二处理单元63,还用于若在预设第二时长内未接收到所述其他服务器发送的所述域名的解析结果,在预设第三时长内接收到携带有所述域名的第二解析请求,则直接发送所述目标解析结果。
[0148]
在某些可能的实施方式中,所述第一处理单元62,还用于发送所述目标解析结果及预先配置的时间段。
[0149]
在某些可能的实施方式中,所述第一处理单元62,还用于若确定在预设第一时长内接收到所述其他服务器发送的所述域名的解析结果,则发送所述域名的解析结果。
[0150]
由于本申请中预设有第一时长,服务器在确定本地缓存有接收到的第一解析请求中携带的域名所对应的目标解析结果,并确定该目标解析结果对应的有效期已到期的情况下,先向其他服务器转发接收到的第一解析请求,当确定在预设第一时长内未接收到其他服务器发送的该域名的解析结果后,便先发送缓存的目标解析结果,从而避免一直等待其他服务器发送该域名的解析结果所耗费的时间,并实现可以在预设第一时长内及时响应第一解析请求,提高服务器的响应效率以及用户体验。
[0151]
在上述各实施例的基础上,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有可由处理器执行的计算机程序,当所述程序在所述处理器上运行
时,使得所述处理器执行时实现如下步骤:
[0152]
接收第一解析请求,并获取所述第一解析请求中携带的域名的信息;
[0153]
确定本地缓存有所述域名对应的目标解析结果,且所述目标解析结果对应的有效期已到期,则向其他服务器转发所述第一解析请求;
[0154]
确定在预设第一时长内未接收到所述其他服务器发送的所述域名的解析结果,发送所述目标解析结果。
[0155]
在某些可能的实施方式中,所述确定在预设第一时长内未接收到所述其他服务器发送的所述域名的解析结果,包括:
[0156]
在所述预设第一时长内接收到所述其他服务器发送的失败响应信息;或
[0157]
在所述预设第一时长内未接收到所述其他服务器发送的响应信息,所述响应信息为成功响应信息,或失败响应信息,其中,所述成功响应信息中携带有所述域名的解析结果。
[0158]
在某些可能的实施方式中,所述发送所述目标解析结果之后,所述方法还包括:
[0159]
接收到所述其他服务器发送的所述域名的解析结果时,根据所述解析结果对所述目标解析结果进行更新。
[0160]
在某些可能的实施方式中,所述接收到所述其他服务器发送的所述域名的解析结果,包括:
[0161]
接收到所述域名对应的解析结果以及所述解析结果对应的有效期;
[0162]
所述根据所述解析结果对所述目标解析结果进行更新,包括:
[0163]
根据所述解析结果对所述目标解析结果进行更新,并根据所述解析结果对应的有效期对所述目标解析结果对应的有效期进行更新。
[0164]
在某些可能的实施方式中,所述接收到所述其他服务器发送的所述域名的解析结果,包括:
[0165]
在预设第二时长内接收到所述其他服务器发送的所述域名的解析结果;或
[0166]
确定在预设第二时长内未接收到所述其他服务器发送的所述域名的解析结果,按照预设时间间隔向所述其他服务器发送所述第一解析请求,直至接收到所述其他服务器发送的所述域名的解析结果。
[0167]
在某些可能的实施方式中,若在预设第二时长内未接收到所述其他服务器发送的所述域名的解析结果,所述方法还包括:
[0168]
在预设第三时长内接收到携带有所述域名的第二解析请求,则直接发送所述目标解析结果。
[0169]
在某些可能的实施方式中,所述发送所述目标解析结果,包括:
[0170]
发送所述目标解析结果及预先配置的时间段。
[0171]
在某些可能的实施方式中,所述方法还包括:
[0172]
若确定在预设第一时长内接收到所述其他服务器发送的所述域名的解析结果,则发送所述域名的解析结果。
[0173]
由于本申请中预设有第一时长,服务器在确定本地缓存有接收到的第一解析请求中携带的域名所对应的目标解析结果,并确定该目标解析结果对应的有效期已到期的情况下,先向其他服务器转发接收到的第一解析请求,当确定在预设第一时长内未接收到其他
服务器发送的该域名的解析结果后,便先发送缓存的目标解析结果,从而避免一直等待其他服务器发送该域名的解析结果所耗费的时间,并实现可以在预设第一时长内及时响应第一解析请求,提高服务器的响应效率以及用户体验。
[0174]
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0175]
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0176]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0177]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0178]
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1