选择回源服务器的方法及装置的制造方法
【专利摘要】本发明公开了一种选择回源服务器的方法及装置,涉及互联网技术领域,为解决客户端获取内容资源速度慢的问题而发明。本发明的方法包括:判断是否存在可用的回源服务器;若存在一个,则将所述回源服务器对应的服务器地址反馈给缓存服务器;若存在多个,则选择响应最快的回源服务器对应的服务器地址反馈给缓存服务器。本发明主要用于内容分发网络中。本发明能够最大限度缩短缓存服务器与回源服务器之间的响应时延,进而提高客户端侧的请求响应速度。
【专利说明】
选择回源服务器的方法及装置
技术领域
[0001]本发明涉及互联网技术领域,尤其涉及一种选择回源服务器的方法及装置。
【背景技术】
[0002]内容服务器用于存储内容提供商提供的内容资源,客户端通过向内容服务器发送超文本传输协议(Hypertext Transfer Protocol,简称HTTP)请求的方式获取所需的内容资源。例如在视频播放场景中,视频服务器中存储有各种各样的视频资源,用户在通过客户端侧的APP或者网页请求播放某个视频资源时,客户端与视频服务器建立HTTP连接,向视频服务器发送携带视频资源标识的HTTP请求。视频服务器接收到HTTP请求后,根据视频资源标识查找对应的视频资源,然后通过HTTP响应返回给客户端。
[0003]实际应用中,由于客户端基数十分庞大,因此内容服务器侧的请求并发数一般较高。为减轻大量HTTP请求对内容服务器造成的负荷压力,同时缩短客户端的等待时间,现有技术对已有的网络架构进行了改进,在客户端和内容服务器之间增设了一级缓存服务器,将客户端请求频度较高的内容资源缓存在缓存服务器中。当客户端请求某个内容资源时,HTTP请求发送到缓存服务器中。如果缓存服务器存储有客户端请求的内容资源,则缓存服务器直接将该内容资源返回给客户端;如果缓存服务器中没有存储客户端请求的内容资源,则缓存服务器向内容服务器请求该内容资源,然后将请求获得的内容资源返回给客户端并存储在缓存服务器中。在增设缓存服务器后,相对缓存服务器的“中介”角色而言,内容服务器的角色转变为了提供原始内容资源的资源源头,因此在改进后的网络架构中,内容服务器又被称作为回源服务器。可以看出,缓存服务器的出现能够大大减少回源服务器侧的HTTP请求数量,有效降低了回源服务器的负荷压力。
[0004]目前,上述网络架构中的回源服务器通常是分布式部署的,即在缓存服务器上级部署多个同质的回源服务器,每一台回源服务器中都保存有完整且相同的内容资源。在未存储内容资源的情况下,缓存服务器可以向任意一台回源服务器进行资源请求。在分布式系统中,不同的回源服务器可能会部署在不同的地区,与缓存服务器之间的距离远近、传输条件的好坏、运营商的选择等因素都会影响回源服务器对缓存服务器的响应时延。如果回源服务器的响应时延较大,那么会影到响客户端侧的请求响应速度,降低提供内容资源的服务质量。
【发明内容】
[0005]本发明提供了一种选择回源服务器的方法及装置,能够解决客户端获取内容资源速度慢的问题。
[0006]为解决上述问题,一方面,本发明提供了选择回源服务器的方法,该方法包括:
[0007]判断是否存在可用的回源服务器;
[0008]若存在一个,则将所述回源服务器对应的服务器地址反馈给缓存服务器;
[0009]若存在多个,则选择响应最快的回源服务器对应的服务器地址反馈给缓存服务器。
[0010]另一方面,本发明还提供了一种选择回源服务器的装置,该装置包括:
[0011]判断单元,用于判断是否存在可用的回源服务器;
[0012]处理单元,用于在存在一个可用的回源服务器时,将所述回源服务器对应的服务器地址反馈给缓存服务器,在存在多个可用的回源服务器时,选择响应最快的回源服务器对应的服务器地址反馈给缓存服务器。
[0013]本发明提供的选择回源服务器的方法及装置,能够从可用的目标回源服务器中查找通信速度最快的最优回源服务器,并将最优回源服务器的服务器地址返回给缓存服务器,以使得缓存服务器向该最优回源服务器请求内容资源。与现有技术中缓存服务器向任意一个回源服务器请求内容资源相比,本发明能够最大限度缩短缓存服务器与回源服务器之间的响应时延,进而提高客户端侧的请求响应速度。
【附图说明】
[0014]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0015]图1为本发明实施例提供的一种选择回源服务器的方法流程图;
[0016]图2为本发明实施例提供的再一种选择回源服务器的方法流程图;
[0017]图3为本发明实施例提供的另一种选择回源服务器的方法流程图;
[0018]图4为本发明实施例提供的又一种选择回源服务器的方法流程图;
[0019]图5为本发明实施例提供的一种选择回源服务器的装置的组成框图;
[0020]图6为本发明实施例提供的另一种选择回源服务器的装置的组成框图。
【具体实施方式】
[0021]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0022]为解决客户端侧请求响应速度慢的问题,本发明实施例提供了一种选择回源服务器的方法及装置。如图1所示,该方法包括:
[0023]101、判断是否存在可用的回源服务器。
[0024]本实施例的目的在于选择一个与缓存服务器之间通信速度最快的最优回源服务器,以使缓存服务器与该最优回源服务器进行通信。在选择最优回源服务器之前,首先需要确定哪些回源服务器是可用的,即查找作为待选择对象的目标回源服务器。分布式系统中会存在有多个回源服务器,可以从中选择能够对缓存服务器进行响应的回源服务器,作为目标回源服务器。
[0025]所谓能够对缓存服务器进行响应,是指回源服务器处于正常的工作状态,能够响应于缓存服务器的HTTP请求,向缓存服务器返回相应的内容资源。实际应用中可以采用报活测试的手段对回源服务器的状态进行测试。
[0026]102、若存在一个,则将回源服务器对应的服务器地址反馈给缓存服务器。
[0027]当只有一个可用的回源服务器时,直接将该回源服务器的服务器地址返回给缓存服务器使用。
[0028]103、若存在多个,则选择响应最快的回源服务器对应的服务器地址反馈给缓存服务器。
[0029]当有多个目标回源服务器时,分别测试每个目标回源服务器的响应速度。所谓响应速度是指目标回源服务器与缓存服务器之间的通信速度。通信速度的快慢由多种因素共同影响,包括回源服务器的处理能力、与缓存服务器之间的距离远近、传输条件优劣等。本实施例通过测试手段验证通信速度结果,无需关注影响通信速度快慢的具体因素。
[0030]实际应用中,可以通过向目标回源服务器模拟发送HTTP请求的方式进行速度测试,也可以对通信链路中各种中间节点的通信速度进行测试,例如测试目标回源服务器地址的域名系统(Domain Name System,简称DNS)解析的速度,本实施例不对通信速度的测试手段进行具体限制。在分别对各个目标回源服务器进行速度测试后,获得每个目标回源服务器的测试结果。根据测试结果选择一个通信速度最快的目标回源服务器,将其确定为最优回源服务器。在本实施例的一种实现方式中,回源服务器的服务器地址为网间协议(Internet Protocol,简称IP)地址。在确定最优回源服务器后,获取最优回源服务器的IP地址返回给缓存服务器。缓存服务器将该服务器地址作为HTTP请求的目的地址,向该最优回源服务器发送HTTP请求,请求相应的内容资源。对于只有一个可用的回源服务器的情况,缓存服务器将通过步骤102获得的服务器地址向该可用的回源服务器请求内容资源。
[0031 ]实际应用中,缓存服务器可以在不限于下述三种情况下向回源服务器请求内容资源:1、缓存服务器侧没有存储客户端请求的内容资源;2、缓存服务器侧存储的内容资源过时,需要向回源服务器请求更新内容资源;3、人工手动更新缓存服务器侧存储的内容资源。本实施例不对缓存服务器向回源服务器请求内容资源的条件进行限制。
[0032]图1给出了选择最优回源服务器的流程。实际应用中,图1所示流程可以由缓存服务器执行,也可以由独立于缓存服务器和回源服务器的第三设备执行。本发明后续实施例以缓存服务器为执行主体进行说明。
[0033]进一步的,作为对图1所示方法的细化,本发明实施例还提供了一种选择回源服务器的方法。该方法中,当存在多个可用的回源服务器时,缓存服务器通过测试域名解析速度的方式选择最优回源服务器。如图2所示,该方法包括:
[0034]201、通过心跳报活测试查找目标回源服务器。
[0035]缓存服务器首先需要查找可用的目标回源服务器。在本步骤中,缓存服务器通过心跳报活的方式测试回源服务器是否可用。
[0036]具体的,缓存服务器可以周期性(例如5秒/次)的向各个回源服务器发送心跳包。对于因网络链路故障导致缓存服务器与回源服务器之间无法通信的情况,或者虽然两者之间可以通信但是回源服务器因发生故障无法响应心跳包的情况,缓存服务器可以通过是否接收到心跳响应包的方式判断回源服务器是否可用,即如果能够接收到心跳响应包,则确定回源服务器可用。而在另一种情况下,虽然网络链路正常并且回源服务器未发生故障,但是当回源服务器因负载较高或其他原因无法响应HTTP请求时,回源服务器可以向缓存服务器返回一个心跳响应包,并在心跳响应包中携带一个回源服务器是否可用的状态信息。缓存服务器根据该状态信息判断回源服务器是否可用,即当状态信息表示可用时,确定回源服务器可用。
[0037]进一步的,在本实施例的另一种实现方式中,还可以由回源服务器向缓存服务器主动定期发送心跳包。如果缓存服务器无法接收到回源服务器的心跳包,或者虽然能够接收到心跳包,但是心跳包中的状态信息为不可用,则缓存服务器确定回源服务器不可用。
[0038]当不存在可用的目标回源服务器时,缓存服务器向客户端或内容提供商发送告警信息,并终止后续流程的执行。
[0039]202、测试目标回源服务器的域名解析速度。
[0040]—般情况下,不同地区、不同运营商的DNS服务器的域名解析速度会有所差异,并且同一个DNS服务器解析不同域名的速度也会不同,而DNS服务器解析回源服务器域名的快慢会直接影响到回源服务器与缓存服务器之间的通信速度,因此本实施例可以对DNS服务器的域名解析速度进行测试。
[0041]本步骤中,缓存服务器侧预先配置有各个回源服务器的域名,缓存服务器将各个目标回源服务器的域名分别发送给DNS服务器进行解析,并等待DNS服务器返回的、通过域名解析获得的服务器地址。
[0042]203、将域名解析速度最快的目标回源服务器,确定为最优回源服务器。
[0043]缓存服务器将最先接收到的域名解析响应所对应的目标回源服务器,确定为最优回源服务器。
[0044]204、获取最优回源服务器的服务器地址。
[0045]缓存服务器从最先接收到的域名解析响应中获取服务器地址,该服务器地址即为最优回源服务器的服务器地址。
[0046]205、根据获取的服务器地址向最优回源服务器请求内容资源。
[0047]缓存服务器将获取的服务器地址作为HTTP请求的目的地址,并将内容资源的内容标识添加到HTTP请求中发送给最优回源服务器,以使得最优回源服务器返回对应该内容标识的内容资源。在获得内容资源后,缓存服务器通过HTTP响应返回给客户端,并将该内容资源保存在本地。当下次客户端请求该内容资源时,缓存服务器直接返回该内容资源即可,无需再次向回源服务器进行请求。
[0048]进一步的,作为对图1所示方法的细化,本发明实施例还提供了一种选择回源服务器的方法。该方法中,当存在多个可用的回源服务器时,缓存服务器通过测试数据下载速度的方式选择最优回源服务器。如图3所示,该方法包括:
[0049]301、通过心跳报活测试查找目标回源服务器。
[0050]本步骤的实现方式与图2步骤201的实现方式相同,此处不再赘述。
[0051]302、测试目标回源服务器的数据下载速度。
[0052]所谓测试数据下载速度,是指缓存服务器模拟请求内容资源的方式向目标回源服务器进行HTTP请求,并测试从HTTP请求发出到接收到目标回源服务器返回的HTTP响应之间的耗时长短。由于本步骤中的请求过程仅为测试之用,请求何种内容资源并无实质意义,因此为节省网络传输资源,可以设定一个数据量较小的特定数据信息作为HTTP请求的内容对象,例如几字节的标记信息等,本实施例对此不作限制。
[0053]如前所述,缓存服务器侧配置有各个回源服务器的域名信息,在发起HTTP请求之前,缓存服务器将域名发送给DNS服务器进行解析,获得对应的服务器地址,然后将该服务器地址作为HTTP请求的目的地址,向不同的目标回源服务器发送HTTP请求。
[0054]需要说明的是,在传统的站点访问流程中,一般都需要通过域名解析获得站点地址。本实施例中虽然不涉及对域名解析速度的测试,但是作为发起HTTP请求的一个必要流程,缓存服务器仍需要向DNS服务器进行域名解析,以获得对应的服务器地址。
[0055]303、将数据下载速度最快的目标回源服务器,确定为最优回源服务器。
[0056]缓存服务器在向各个目标回源服务器发送HTTP请求后,等待接收HTTP响应,并将最先接收到的HTTP响应对应的目标回源服务器,确定为最优回源服务器。所谓最先接收到的HTTP响应对应的目标回源服务器,是指发送这个最先被缓存服务器接收到的HTTP响应的目标回源服务器。需要注意的是,本实施例测试的数据下载速度是指缓存服务器从发送HTTP请求到接收HTTP响应之间的耗时长短。受网络传输条件影响,目标回源服务器较早发送出的HTTP响应并不一定能够被缓存服务器最先接收到,因此,本实施例中的最优回源服务器是指缓存服务器最先接收到的HTTP响应对应的目标回源服务器,而非是所有目标回源服务器中最先发送HTTP响应的回源服务器。
[0057]304、获取最优回源服务器的服务器地址。
[0058]由于缓存服务器在发送HTTP请求时向DNS服务器解析了对应域名的服务器地址,因此缓存服务器可以查找到最优回源服务器的域名所对应的服务器地址。
[0059]此外,与图2实施例有所区别的是,本实施例中缓存服务器接收到了最优回源服务器返回的HTTP响应,缓存服务器也可以直接解析出HTTP响应的源地址,该源地址即为最优回源服务器的服务器地址。
[0060]305、根据获取的服务器地址向最优回源服务器请求内容资源。
[0061]本步骤的实现方式与图2步骤205的实现方式相同,此处不再赘述。
[0062]进一步的,作为对图1所示方法的细化,本发明实施例还提供了一种选择回源服务器的方法。该方法中,大概存在多个可用的回源服务器时,缓存服务器对域名解析速度和数据下载速度进行综合测试,找出通信速度最快的回源服务器。如图4所示,该方法包括:
[0063]401、通过心跳报活测试查找目标回源服务器。
[0064]本步骤的实现方式与图3步骤301的实现方式相同,此处不再赘述。
[0065]402、测试目标回源服务器的域名解析速度。
[0066]缓存服务器首先向DNS服务器发送目标回源服务器的域名,在接收到DNS服务器根据域名解析出的服务器地址后,将该地址作为HTTP请求的目的地址,向目标回源服务器发送HTTP请求。
[0067]步骤402测试的速度为域名解析速度,即从缓存服务器向DNS服务器发送域名信息,到缓存服务器接收到解析的服务器地址之间的耗时长短。为便于说明,本实施例将这段时间记为Tl。
[0068]403、测试目标回源服务器的数据下载速度。
[0069]在获得服务器地址后,缓存服务器向目标回源服务器发送HTTP请求,并计算从发出HTTP请求到接收到HTTP响应之间的耗时长短,本实施例将这段时间记为T2。
[0070]404、将域名解析速度与数据下载速度之和最快的目标回源服务器,确定为最优回源服务器。
[0071]缓存服务器将Tl与T2进行求和,获得一个反映回源服务器整体通信速度的综合时间,这里记为T3。然后缓存服务器对所有目标回源服务器的T3进行比较,将最小值对应的目标回源服务器,确定为最优回源服务器。
[0072]与图2或图3所示流程有所不同,本实施例在考察回源服务器的通信速度时,并非仅关注域名解析或数据下载中某一个环节的耗时长短,而是将两者结合,以便反映出缓存服务器向目标回源服务器发起的完整访问流程的耗时长短。本实施例中,目标回源服务器在某一个环节耗时最短并不能代表其通信速度最快。
[0073]405、获取最优回源服务器的服务器地址。
[0074]本步骤的实现可以参考图2步骤204或者图3步骤304的方式实现,此处不再赘述。
[0075]406、根据获取的服务器地址向最优回源服务器请求内容资源。
[0076]本步骤的实现方式与图3步骤305的实现方式相同,此处不再赘述。
[0077]进一步的,作为对上述图1至图3所示方法的结合,在本实施例的一种实现方式中,缓存服务器可以周期性的测试目标回源服务器的通信速度。由于目标回源服务器的通信速度受各种因素综合影响,而不同因素在不同时期对通信速度影响的程度又会存在偶然性,因此对目标回源服务器的通信速度进行定期测试能够更加准确、客观的反映出目标回源服务器在一段时间内的真实通信速度。具体的,缓存服务器可以按照预定的时间间隔多次对目标回源服务器的域名解析速度和/或数据下载速度进行测试,例如每天、每周或每月测试一次。然后根据历史测试结果的变动趋势,确定一个最优回源服务器。所谓历史测试结果的变动趋势,是指在一段时间内,多次测试结果所反映出的通信速度的变化趋势。实际应用中,缓存服务器可以将一段时间内,针对一个目标回源服务器多次测试获得的通信速度绘制成速度变化曲线,将曲线形态上扬(即通信速度不断提高)并且曲线积分值最大的曲线所对应的目标回源服务器,确定为最优回源服务器。曲线积分值即为曲线以下的面积,该面积能够反映该段时间内的通信速度的综合水平。当然,实际应用中也可以将多次获得的通信速度求平均值,得到通信速度的综合值。
[0078]下面给出本发明实施例的两个业务场景,在下述业务场景中,由缓存服务器对回源服务器进行测试和选择。具体的:
[0079]场景一,内容分发网络(Content Distribut1n Network,简称⑶N)的运营场景。
[0080]客户端向缓存服务器发起HTTP请求,在该请求中携带需要获取的某视频资源的视频标识。缓存服务器接收到HTTP请求后,根据该视频标识在本地查找客户端需要的视频资源。当发现本地未存储该视频资源时,缓存服务器向回源服务器请求该视频资源。在本场景中,缓存服务器在向回源服务器请求视频资源之前,首先查找CDN网络中所有可用的回源服务器,即目标回源服务器。然后分别测试每个目标回源服务器的通信速度。当找到一个通信速度最快的最优回源服务器时,缓存服务器最优回源服务器的服务器地址发送HTTP请求,在该请求中添加客户端所需视频资源的视频标识。待接收到最优回源服务器通过HTTP响应返回的视频资源后,缓存服务器将该视频资源存储在本地,并且对客户端发起的HTTP请求进行响应,将该视频资源返回给客户端。
[0081]场景二,⑶N网络中回源服务器的测试场景。
[0082]在CDN网络中,内容提供商一般拥有自己的回源服务器,内容分发者在扮演对接众多内容提供商的平台角色时,有时需要应内容提供商要求对回源服务器的通信速度进行测试。在本场景中,缓存服务器确定的目标回源服务器可以是全网所有的回源服务器,也可以是某个内容提供商的回源服务器。缓存服务器分别测试各个目标回源服务器的通信速度,然后最优回源服务器的测试结果上报给相应的内容提供商。当然,也可以将所有目标回源服务器的测试结果全部进行上报。需要说明的是,本场景目的在于对回源服务器进行测试,不一定涉及对内容资源的实际请求,因此相对场景一而言,本场景无需执行向最优回源服务器请求内容资源的步骤。
[0083]进一步的,作为对上述图1至图4所示方法的实现,本发明实施例还提供了一种选择回源服务器的装置。该装置可以部署在缓存服务器中,也可以独立于缓存服务器,但是与缓存服务器之间保持数据交互关系,用以对上述图1至图4所示的方法进行实现。如图5所示,该装置包括:判断单元51及处理单元52;其中,
[0084]判断单元51,用于判断是否存在可用的回源服务器。
[0085]本实施例的目的在于选择一个与缓存服务器之间通信速度最快的最优回源服务器,以使缓存服务器与该最优回源服务器进行通信。在选择最优回源服务器之前,首先需要确定哪些回源服务器是可用的,即查找作为待选择对象的目标回源服务器。分布式系统中会存在有多个回源服务器,可以从中选择能够对缓存服务器进行响应的回源服务器,作为目标回源服务器。
[0086]所谓能够对缓存服务器进行响应,是指回源服务器处于正常的工作状态,能够响应于缓存服务器的HTTP请求,向缓存服务器返回相应的内容资源。实际应用中可以采用报活测试的手段对回源服务器的状态进行测试。
[0087]处理单元52,用于在存在一个可用的回源服务器时,将回源服务器对应的服务器地址反馈给缓存服务器,在存在多个可用的回源服务器时,选择响应最快的回源服务器对应的服务器地址反馈给缓存服务器。
[0088]当只有一个可用的回源服务器时,没有选择最优回源服务器的余地,直接将该回源服务器的服务器地址返回给缓存服务器使用。
[0089]当有多个目标回源服务器时,分别测试每个目标回源服务器的响应速度。所谓响应速度是指目标回源服务器与缓存服务器之间的通信速度。通信速度的快慢由多种因素共同影响,包括回源服务器的处理能力、与缓存服务器之间的距离远近、传输条件优劣等。本实施例通过测试手段验证通信速度结果,无需关注影响通信速度快慢的具体因素。
[0090]进一步的,处理单元52用于:
[0091]根据回源服务器的域名解析速度和/或数据下载速度确定响应最快的回源服务器。
[0092]进一步的,如图6所示,处理单元52包括第一处理模块521,用于:
[0093]测试回源服务器的域名解析速度;
[0094]将域名解析速度最快的回源服务器确定为响应最快的回源服务器。
[0095]本实施例中预先配置有各个回源服务器的域名,将各个目标回源服务器的域名分别发送给DNS服务器进行解析,并等待DNS服务器返回的、通过域名解析获得的服务器地址。将最先接收到的域名解析响应所对应的目标回源服务器,确定为最优回源服务器。
[0096]进一步的,如图6所示,处理单元52包括第二处理模块522,用于:
[0097]测试回源服务器的数据下载速度;
[0098]将数据下载速度最快的回源服务器确定为响应最快的回源服务器。
[0099]本实施例中配置有各个回源服务器的域名信息,在发起HTTP请求之前,将域名发送给DNS服务器进行解析,获得对应的服务器地址,然后将该服务器地址作为HTTP请求的目的地址,向不同的目标回源服务器发送HTTP请求。
[0100]需要说明的是,在传统的站点访问流程中,一般都需要通过域名解析获得站点地址。本实施例中虽然不涉及对域名解析速度的测试,但是作为发起HTTP请求的一个必要流程,因此仍需要向DNS服务器进行域名解析,以获得对应的服务器地址。
[0101]进一步的,处理单元52,用于:
[0102]选择响应最快的回源服务器对应的服务器地址反馈给缓存服务器,以便缓存服务器根据服务器地址向响应最快的回源服务器请求内容资源。
[0103]缓存服务器将获取的服务器地址作为HTTP请求的目的地址,并将内容资源的内容标识添加到HTTP请求中发送给最优回源服务器,以使得最优回源服务器返回对应该内容标识的内容资源。在获得内容资源后,缓存服务器通过HTTP响应返回给客户端,并将该内容资源保存在本地。当下次客户端请求该内容资源时,缓存服务器直接返回该内容资源即可,无需再次向回源服务器进行请求。
[0?04] 进一步的,判断单元51,用于:
[0105]通过心跳报活测试判断是否存在可用的回源服务器。
[0106]本实施例可以周期性(例如5秒/次)的向各个回源服务器发送心跳包。如果能够接收到心跳响应包,则确定回源服务器可用。或者根据该状态信息判断回源服务器是否可用,即当状态信息表示可用时,确定回源服务器可用。
[0107]进一步的,处理单元52,用于:
[0108]周期性测试回源服务器的域名解析速度和/或数据下载速度;
[0109]根据历史测试结果的变动趋势,确定响应最快的回源服务器。
[0110]由于目标回源服务器的通信速度受各种因素综合影响,而不同因素在不同时期对通信速度影响的程度又会存在偶然性,因此对目标回源服务器的通信速度进行定期测试能够更加准确、客观的反映出目标回源服务器在一段时间内的真实通信速度。具体的,可以按照预定的时间间隔多次对目标回源服务器的域名解析速度和/或数据下载速度进行测试,例如每天、每周或每月测试一次。然后根据历史测试结果的变动趋势,确定一个最优回源服务器。所谓历史测试结果的变动趋势,是指在一段时间内,多次测试结果所反映出的通信速度的变化趋势。
[0111]本实施例提供的选择回源服务器的装置,能够从可用的目标回源服务器中查找通信速度最快的最优回源服务器,并将最优回源服务器的服务器地址返回给缓存服务器,以使得缓存服务器向该最优回源服务器请求内容资源。与现有技术中缓存服务器向任意一个回源服务器请求内容资源相比,本实施例能够最大限度缩短缓存服务器与回源服务器之间的响应时延,进而提高客户端侧的请求响应速度。
[0112]以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0113]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0114]最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【主权项】
1.一种选择回源服务器的方法,其特征在于,所述方法包括: 判断是否存在可用的回源服务器; 若存在一个,则将所述回源服务器对应的服务器地址反馈给缓存服务器; 若存在多个,则选择响应最快的回源服务器对应的服务器地址反馈给缓存服务器。2.根据权利要求1所述的方法,其特征在于,包括: 根据回源服务器的域名解析速度和/或数据下载速度确定响应最快的回源服务器。3.根据权利要求2所述的方法,其特征在于,包括: 测试回源服务器的域名解析速度; 将域名解析速度最快的回源服务器确定为响应最快的回源服务器。4.根据权利要求2所述的方法,其特征在于,包括: 测试回源服务器的数据下载速度; 将数据下载速度最快的回源服务器确定为响应最快的回源服务器。5.根据权利要求3或4所述的方法,其特征在于,包括: 选择响应最快的回源服务器对应的服务器地址反馈给缓存服务器,以便所述缓存服务器根据所述服务器地址向所述响应最快的回源服务器请求内容资源。6.根据权利要求2所述的方法,其特征在于,包括: 周期性测试回源服务器的域名解析速度和/或数据下载速度; 根据历史测试结果的变动趋势,确定响应最快的回源服务器。7.一种选择回源服务器的装置,其特征在于,所述装置包括: 判断单元,用于判断是否存在可用的回源服务器; 处理单元,用于在存在一个可用的回源服务器时,将所述回源服务器对应的服务器地址反馈给缓存服务器,在存在多个可用的回源服务器时,选择响应最快的回源服务器对应的服务器地址反馈给缓存服务器。8.根据权利要求7所述的装置,其特征在于,所述处理单元用于根据回源服务器的域名解析速度和/或数据下载速度确定响应最快的回源服务器。9.根据权利要求8所述的装置,其特征在于,所述处理单元用于测试回源服务器的域名解析速度,将域名解析速度最快的回源服务器确定为响应最快的回源服务器。10.根据权利要求8所述的装置,其特征在于,所述处理单元用于测试回源服务器的数据下载速度,将数据下载速度最快的回源服务器确定为响应最快的回源服务器。11.根据权利要求9或10所述的装置,其特征在于,所述处理单元用于选择响应最快的回源服务器对应的服务器地址反馈给缓存服务器,以便所述缓存服务器根据所述服务器地址向所述响应最快的回源服务器请求内容资源。12.根据权利要求8所述的方法,其特征在于,所述处理单元用于周期性测试回源服务器的域名解析速度和/或数据下载速度;根据历史测试结果的变动趋势,确定响应最快的回源服务器。
【文档编号】H04L29/08GK105871975SQ201510792607
【公开日】2016年8月17日
【申请日】2015年11月17日
【发明人】孙国良
【申请人】乐视云计算有限公司