本发明涉及网络技术领域,尤其涉及一种资源下载方法、及服务器。
背景技术:
伴随着计算机技术和网络时代的推进,在生产生活过程中经常会需要下载大型软件和其它类型的网络资源。在下载大型软件或其它大型数据时,通常需要架设多个服务器共同完成下载任务,提高用户的下载速度,满足用户对下载速度的需求。
目前,下载大型软件时通常需要架设多个服务器,采用负载均衡技术,将负载(下载任务)进行平衡、分摊到多个服务器例如文件传输协议(File Transfer Protocol,FTP)服务器、企业关键应用服务器和其它关键任务服务器等上进行执行,从而共同完成工作任务。通过负载均衡技术可以将下载任务分给多个服务器共同完成,提高下载速度。采用负载均衡技术需要安装负载均衡设备,成本高,实现过程复杂。
上述技术方案中服务器需要架设负载均衡,运营和维护成本比较高。
技术实现要素:
本发明实施例提供了一种资源下载方法、及服务器,用于提高下载网络资源的速度,减少服务器运营和维护的成本。
一方面本发明实施例提供了一种资源下载方法,包括:
第一服务器在接收到终端设备发送的下载请求后,确定所述下载请求所指定的目标数据并向第二服务器发送下载指令,所述下载指令指示所述第二服务器向所述终端设备发送所述目标数据,所述目标数据包括第一数据和第二数据,所述第一服务器存储有所述第二数据,所述第二服务器存储有所述第一数据且未存储所述第二数据;
所述第一服务器向所述第二服务器发送所述第二数据。
在一个可选的实现方式中,在所述确定所述下载请求所指定的目标数据并向第二服务器发送下载指令之前,所述方法还包括:
检测所述终端设备与所述第一服务器相关联的服务器之间的下载速度,确定下载速度满足所述终端设备的下载速度需求的服务器为第二服务器,所述相关联的服务器是存储有所述第一数据的服务器。
在一个可选的实现方式中,所述第一服务器在接收到终端设备发送的下载请求后,确定所述下载请求所指定的目标数据并向第二服务器发送下载指令包括:
所述第一服务器在接收到终端设备通过浏览器向目标网站发送的下载请求后,确定所述下载请求所指定的目标数据并向第二服务器发送下载指令,所述第一服务器运行有所述目标网站,所述第二服务器未运行所述目标网站。
在一个可选的实现方式中,在第一服务器接收到终端设备发送的下载请求之后,在所述确定所述下载请求所指定的目标数据并向第二服务器发送下载指令之前,所述方法还包括:
所述第一服务器验证所述终端设备的下载权限;
所述确定所述下载请求所指定的目标数据并向第二服务器发送下载指令包括:
在所述下载权限验证通过后,确定所述下载请求所指定的目标数据并向第二服务器发送下载指令。
在一个可选的实现方式中,所述方法还包括:
所述第一服务器检测所述目标数据中的第一数据是否已利用更新数据进行更新;
若是,向所述第二服务器发送更新指令和所述更新数据,所述更新指令指示所述第二服务器根据所述更新数据对所述第二服务器中的第一数据进行更新。
二方面本发明实施例还提供了一种服务器,包括:
接收单元,用于接收终端设备发送的下载请求;
确定单元,用于确定所述下载请求所指定的目标数据;
发送单元,用于向第二服务器发送下载指令,所述下载指令指示所述第二服务器向所述终端设备发送所述目标数据,所述目标数据包括第一数据和第二数据,所述第一服务器存储有所述第二数据,所述第二服务器存储有所述第一数据且未存储所述第二数据;
所述发送单元,还用于所述第一服务器向所述第二服务器发送所述第二数据。
在一个可选的实现方式中,所述服务器还包括:
检测单元,用于检测所述终端设备与所述第一服务器相关联的服务器之间的下载速度,所述相关联的服务器是存储有所述第一数据的服务器;
所述确定单元,还用于确定下载速度满足所述终端设备的下载速度需求的服务器为第二服务器。
在一个可选的实现方式中,所述接收单元,具体用于接收终端设备通过浏览器向目标网站发送的下载请求;
所述确定单元,具体用于确定所述下载请求所指定的目标数据;
所述发送单元,具体用于向第二服务器发送下载指令,所述第二服务器未运行所述目标网站。
在一个可选的实现方式中,所述服务器还包括:
验证单元,用于所述第一服务器验证所述终端设备的下载权限;
所述确定单元,具体用于在所述下载权限验证通过后,确定所述下载请求所指定的目标数据并向第二服务器发送下载指令。
在一个可选的实现方式中,所述检测单元,还用于所述第一服务器检测所述目标数据中的第一数据是否已利用更新数据进行更新;
所述发送单元,还用于在所述检测单元检测到所述目标数据中的第一数据已利用更新数据进行更新之后,向所述第二服务器发送更新指令,并将所述更新数据发送给所述第二服务器,所述更新指令指示所述第二服务器根据所述更新数据对所述第一数据进行更新。
三方面本发明实施例还提供了一种服务器,包括:处理器和存储器,其中,所述处理器用于执行本发明实施例提供的任意一项的方法。
从以上技术方案可以看出,本发明实施例具有以下优点:当终端设备通过第一服务器下载目标数据的速度不能满足该终端设备对下载速度的需求时,上述第一服务器将该目标数据中未存储在第二服务器的第二数据发送给该第二服务器,该第二服务器将该第二数据和它存储的第一数据合并为目标数据后发送给该终端设备。该目标数据包括第一数据和第二数据。通过上述技术方案可以提高用户下载网络资源的速度,并且减少服务器运营和维护的成本。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一种资源下载方法流程示意图;
图2为本发明实施例中目标数据的存储示意图;
图3为本发明实施例终端设备的浏览器界面的示意图;
图4为本发明实施例又一种资源下载方法流程示意图;
图5为本发明实施例服务器结构示意图;
图6为本发明实施例服务器结构示意图;
图7为本发明实施例服务器结构示意图;
图8为本发明实施例服务器结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例提供了一种资源下载方法,如图1所示,包括:
101、第一服务器在接收到终端设备发送的下载请求后,确定上述下载请求所指定的目标数据并向第二服务器发送下载指令。
本发明实施例中,上述下载指令指示上述第二服务器向上述终端设备发送上述目标数据,上述目标数据包括第一数据和第二数据,上述第一服务器存储有上述第二数据,上述第二服务器存储有上述第一数据且未存储上述第二数据。
可以理解的是,上述目标数据是用户需要下载的数据,例如可以是软件、文档、音频文件等。上述第一服务器例如可以是网络(World Wide Web)服务器、文件传输协议(File Transfer Protocol,FTP)服务器、企业关键应用服务器和其它关键任务服务器等。上述终端设备可以是台式电脑、笔记本电脑、手机、平板电脑等。
可以理解的是,上述第二服务器的类型可以和上述第一服务器相同,也可以不同,本发明实施例不作限定。上述第一服务器和第二服务器可以为相同的网站提供服务,上述第二服务器也可以不为网站提供服务。上述下载请求可以包含上述终端设备的标识信息、网际协议地址(IP)信息和需要下载的目标数据的信息。上述第一服务器可以解析上述下载请求并提取出该下载请求中包含的目标数据的信息,进而确定上述终端设备所需的目标数据。上述第一服务器也可以从该下载请求中提出上述终端设备的标识信息或IP信息,再根据该标识信息或IP信息确定上述终端设备的下载权限。上述第一服务器可以在上述下载权限验证通过后,确定能够满足上述终端设备的下载需求例如下载速度、下载时延等的某个服务器为第二服务器。上述第一服务器向上述第二服务器发送下载指令。上述下载指令可以包含上述终端设备的信息和上述目标数据的信息。上述下载指令指示上述第二服务器向上述终端设备发送上述目标数据。
如图2所示,上述目标数据包括第一数据和第二数据;上述第一服务器存储有上述第二数据,上述第二服务器存储有上述第一数据且未存储上述第二数据。举例来说,上述第一服务器可以在负载较重或者不能满足该终端设备的下载目标数据的需求时,向上述第二服务器发送下载指令指示上述第二服务器向上述终端设备发送上述目标数据。上述终端设备通过上述第二服务器下载上述目标数据可以满足该终端设备对下载速度的需求。
102、上述第一服务器向上述第二服务器发送上述第二数据。
本发明实施例中,上述第二数据存储在上述第一服务器中。上述第二服务器存储有第一数据且未存储上述第二数据。上述第二数据例如可以是目标数据中的加密数据,每次下载时上述目标数据中的加密数据可以是变化的。上述第一数据可以是目标数据中不变的数据,即每次下载时目标数据中的这一部分数据都不改变。上述第一服务器将上述第二数据发送上述第二服务器,上述第二服务器将接收到的上述第二数据和它本身存储的上述第一数据合并为上述目标数据后,发送给上述终端设备。本发明实施例并不限制第一数据和第二数据的类型和具体内容。
服务器之间的访问,一般速度都很快。当上述第一服务器不能满足该终端设备的下载需求时,可以指定上述第二服务器向该终端设备发送目标数据,并将上述第二服务器缺少的数据发送给上述第二服务器。通过这种方式可以提高上述终端设备下载上述目标数据的速度。
本发明实施例选择可以满足上述终端设备下载需求的服务器为第二服务器,通过该第二服务器向该终端设备发送目标数据,满足该终端设备的下载需求。
本发明实施例提供了一种确定第二服务器的方案,具体如下:在上述确定上述下载请求所指定的目标数据并向第二服务器发送下载指令之前,上述方法还包括:
检测上述终端设备与上述第一服务器相关联的服务器之间的下载速度,确定下载速度满足上述终端设备的下载速度需求的服务器为第二服务器,上述相关联的服务器是存储有上述第一数据的服务器。
与上述第一服务器相关联的服务器可以有多个,这些服务器可以存储有第一数据也可以从上述第一服务器获取上述第一数据。上述第一服务器可以逐个检测与上述第一服务器相关联的服务器向该终端设备发送数据的速度,直到检测到可以满足该终端设备下载速度需求的服务器,将该服务器确定为第二服务器。上述第一服务器也可以根据已有的信息确定几个服务器为待检测的服务器,分别检测这几个待检测的服务器向该终端设备发送数据的速度,可以确定下载速度最快的服务器为第二服务器。本发明实施例不限于这两种确定第二服务器的方式,本发明实施例也可以采用其他方式确定第二服务器。
本发明实施例中,通过检测上述终端设备与上述第一服务器相关联的服务器之间的下载速度,确定可以满足该终端设备下载需求的服务器为第二服务器。本发明实施的方法可以提高用户的下载速度,改善用户体验。
本发明实施例中,上述第一服务器接收上述下载请求的方法可以如下:
上述第一服务器在接收到终端设备发送的下载请求后,确定上述下载请求所指定的目标数据并向第二服务器发送下载指令包括:
上述第一服务器在接收到终端设备通过浏览器向目标网站发送的下载请求后,确定上述下载请求所指定的目标数据并向第二服务器发送下载指令,上述第一服务器运行有上述目标网站,上述第二服务器未运行上述目标网站。
请参阅图3,图3是终端设备的浏览器界面的示意图。用户点击下载按键的操作就是通过浏览器向目标网站发送下载请求。举例来说,若用户点击了图3中软件1右侧的下载按键,就是向目标网站发送下载请求,请求下载软件1。上述第一服务器运行有上述目标网站,为上述目标网站提供服务。上述第一服务器在接收到上述目标网站发送的下载请求后,确定该下载请求包含的目标数据和需要下载该目标数据的终端设备的信息。上述第一服务器可以确定上述下载请求所指定的目标数据并向上述第二服务器发送下载指令。上述第二服务器未运行上述目标网站,不能直接为该终端设备提供下载服务。
本发明实施例中,上述终端设备通过浏览器向目标网站发送的下载请求后,上述第一服务器接收该下载请求并向未运行该目标网站的第二服务器发送下载指令,指示上述第二服务器向该终端设备发送目标数据。通过这种方式,提高该终端设备的下载速度。
本发明实施例还进一步提供了验证终端设备下载权限的实现方案,具体如下:在上述第一服务器接收到终端设备发送的下载请求之后,在上述确定上述下载请求所指定的目标数据并向第二服务器发送下载指令之前,上述方法还包括:
上述第一服务器验证上述终端设备的下载权限;
上述确定上述下载请求所指定的目标数据并向第二服务器发送下载指令包括:
在上述下载权限验证通过后,确定上述下载请求所指定的目标数据并向第二服务器发送下载指令。
上述第一服务器可以根据从上述下载请求中提取出的该终端设备的授权信息,确定该终端设备的下载权限。在上述第一服务器确定该终端设备具备相应的下载权限后,确定上述下载请求所指定的目标数据并向第二服务器发送下载指令。
本发明实施例中,上述第一服务器在验证上述终端设备具备相应的下载权限后,才确定上述下载请求所指定的目标数据并向第二服务器发送下载指令,保证了资源下载的安全性。
本发明实施例还进一步提供了更新上述第二服务器中的第一数据的方法,具体如下,上述方法还包括:
上述第一服务器检测上述目标数据中的第一数据是否已利用更新数据进行更新;
若是,向上述第二服务器发送更新指令和上述更新数据,上述更新指令指示上述第二服务器根据上述更新数据对上述第二服务器中的第一数据进行更新。
上述目标数据中的第一数据可以利用更新数据进行更新。上述第一服务器在检测到上述目标数据中的第一数据进行更新后,获取上述更新数据,并向上述第二服务器发送更新指令和上述更新数据,上述更新指令指示上述第二服务器根据上述更新数据对上述第二服务器中的第一数据进行更新。
举例来说,当上述第一服务器检测到上述目标数据中的第一数据有更新数据后,查看上述第一服务器是否有该更新数据,若否,从其他服务器获取该更新数据。上述第一服务器检测到上述第二服务器中的第一数据未进行更新后,向上述第二服务器发送更新指令和上述更新数据。
本发明实施例中,上述第一服务器向上述第二服务器发送更新指令和上述更新数据,指示上述第二服务器根据上述更新数据对上述第二服务器中的第一数据进行更新。可以为用户提供最新版本的目标数据。
本发明实施例还提供了另一种资源下载方法,如图4所示,可以包括:
401、终端设备向第一服务器发送下载请求;
终端设备例如可以是手机、笔记本电脑、台式电脑、平板电脑等。该终端设备可以通过浏览器向该第一服务器发送下载请求。该下载请求可以包含该终端设备的网际协议地址(IP)的信息和需要下载的目标数据的信息。
402、上述第一服务器验证该终端设备的下载权限,验证通过后执行403;
上述第一服务器例如可以是网络(World Wide Web)服务器、文件传输协议(File Transfer Protocol,FTP)服务器、企业关键应用服务器和其它关键任务服务器等。上述第一服务器可以根据该终端设备的IP地址确定该终端设备是否有下载权限。
403、上述第一服务器向该终端设备发送下载地址;
上述第一服务器可以发送使得该终端设备从上述第一服务器下载目标数据的下载地址,也可以发送使得该终端设备从第二服务器下载目标数据的下载地址。上述第一服务器可以检测它是否可以满足该终端设备的下载需求,若是,则向该终端设备发送使得该终端设备从第一服务器下载目标数据的下载地址;若否,则确定可以满足该终端设备下载需求且存储有第一数据的服务器为第二服务器,向该终端设备发送使得该终端设备从上述第二服务器下载目标数据的下载地址。
404、检测是否通过上述第一服务器下载上述目标数据;若是,执行405,否则,执行407;
该终端设备根据上述下载地址检测通过上述第一服务器还是上述第二服务器下载上述目标数据。
405、该终端设备通过上述下载地址与上述第一服务器建立通信连接;
用户通过点击上述第一服务器返回的下载地址的操作就可以与上述第一服务器建立通信连接。
406、上述第一服务器向该终端设备发送目标数据;
上述第一服务器可以将上述目标数据进行压缩后发送给该终端设备,该终端设备接收压缩后的目标数据。
407、该终端设备通过上述下载地址与上述第二服务器建立通信连接;
用户通过点击上述第一服务器返回的下载地址的操作就可以与上述第二服务器建立通信连接。
408、上述第二服务器向上述第一服务器发送下载验证请求,该下载验证请求用于请求上述第一服务器验证该终端设备的下载权限;
上述第二服务器在向该终端设备发送上述目标数据之前,需要通过上述第一服务器验证该终端设备的下载权限和获取上述第二数据。该下载验证请求可以包含第二数据请求信息,请求上述第一服务器向其发送上述第二数据。
409、该终端设备的下载权限通过上述第一服务器的验证;
410、上述第一服务器向上述第二服务器发送上述第二数据;
411、上述第二服务器将接收到的上述第二数据和它本身存储的第一数据合并为上述目标数据;
上述第二服务器可以先将接收到的上述第二数据和它本身存储的第一数据合并为上述目标数据,再对目标数据采取相应的压缩操作。
412、上述第二服务器向该终端设备发送上述目标数据。
上述第二服务器将压缩后的目标数据发送给该终端设备,该终端设备接收压缩后的目标数据。
本发明实施例中第一服务器根据该终端设备的下载需求可以指定能够满足该终端设备的下载需求的服务器向该终端设备发送上述目标数据,也可以不指定服务器,自行向其发送该终端设备所需的目标数据。通过这种方式可以更好的为用户提供服务,满足用户的下载需求。
本发明实施例还提供了一种服务器,如图5所示,包括:
接收单元501,用于接收终端设备发送的下载请求;
确定单元502,用于确定上述下载请求所指定的目标数据;
发送单元503,用于向第二服务器发送下载指令,上述下载指令指示上述第二服务器向上述终端设备发送上述目标数据,上述目标数据包括第一数据和第二数据,上述第一服务器存储有上述第二数据,上述第二服务器存储有上述第一数据且未存储上述第二数据;
上述发送单元503,还用于上述第一服务器向上述第二服务器发送上述第二数据。
上述第一服务器例如可以是网络(World Wide Web)服务器、文件传输协议(File Transfer Protocol,FTP)服务器、企业关键应用服务器和其它关键任务服务器等。上述终端设备可以是台式电脑、笔记本电脑、手机、平板电脑等。上述第二服务器的类型可以和上述第一服务器相同,也可以不同。上述第一服务器和第二服务器可以为相同的网站提供服务,上述第二服务器也可以不为网站提供服务。上述下载请求可以包含上述终端设备的标识信息、网际协议地址(IP)信息和需要下载的目标数据的信息。上述第一服务器可以解析上述下载请求并提取出该下载请求中包含的目标数据的信息,进而确定上述终端设备所需的目标数据。上述第一服务器也可以从该下载请求中提出上述终端设备的标识信息或IP信息,再根据该标识信息或IP信息确定上述终端设备的下载权限。上述第一服务器可以在上述下载权限验证通过后,确定能够满足上述终端设备的下载需求例如下载速度、下载时延等的某个服务器为第二服务器。上述第一服务器向上述第二服务器发送下载指令。上述下载指令可以包含上述终端设备的信息和上述目标数据的信息。上述下载指令指示上述第二服务器向上述终端设备发送上述目标数据。如图2所示,上述目标数据包括第一数据和第二数据;上述第一服务器存储有上述第二数据,上述第二服务器存储有上述第一数据且未存储上述第二数据。举例来说,上述第一服务器可以在负载较重或者不能满足该终端设备的下载目标数据的需求时,向上述第二服务器发送下载指令指示上述第二服务器向上述终端设备发送上述目标数据。上述终端设备通过上述第二服务器下载上述目标数据可以满足该终端设备对下载速度的需求。
上述第二数据存储在上述第一服务器中。上述第二服务器存储有第一数据且未存储上述第二数据。上述第二数据例如可以是目标数据中的加密数据,每次下载时上述目标数据中的加密数据都是变化的。上述第一数据可以是目标数据中不变的数据,即每次下载时目标数据中的这一部分数据都不改变。上述第一服务器将上述第二数据发送上述第二服务器,上述第二服务器将接收到的上述第二数据和它本身存储的上述第一数据合并为上述目标数据后,发送给上述终端设备。本发明实施例并不限制第一数据和第二数据的类型和具体内容。
服务器之间的访问,一般速度都很快。当上述第一服务器不能满足该终端设备的下载需求时,可以指定上述第二服务器向该终端设备发送目标数据,并将上述第二服务器缺少的数据发送给上述第二服务器。
本发明实施例选择可以满足终端设备下载需求的服务器为第二服务器,通过该第二服务器向该终端设备发送目标数据,满足该终端设备的下载需求。
本发明实施例提供了一种确定第二服务器的方案,具体如下:进一步地,如图6所示,上述服务器还包括:
检测单元601,用于检测上述终端设备与上述第一服务器相关联的服务器之间的下载速度,上述相关联的服务器是存储有上述第一数据的服务器;
上述确定单元502,还用于确定下载速度满足上述终端设备的下载速度需求的服务器为第二服务器。
与上述第一服务器相关联的服务器可以有多个,这些服务器可以存储有第一数据也可以从上述第一服务器获取上述第一数据。上述第一服务器可以逐个检测与上述第一服务器相关联的服务器向该终端设备发送数据的速度,直到检测到可以满足该终端设备下载速度需求的服务器,将该服务器确定为第二服务器。上述第一服务器也可以根据已有的信息确定几个服务器为待检测的服务器,分别检测这几个待检测的服务器向该终端设备发送数据的速度,可以确定下载速度最快的服务器为第二服务器。本发明实施例不限于这两种确定第二服务器的方式,本发明实施例也可以采用其他方式确定第二服务器。
本发明实施例中,通过检测上述终端设备与上述第一服务器相关联的服务器之间的下载速度,确定可以满足该终端设备下载需求的服务器为第二服务器。本实施的方法可以提高用户的下载速度,改善用户体验。
本发明实施例中,上述第一服务器接收上述下载请求的方法可以如下:
上述接收单元501,具体用于接收终端设备通过浏览器向目标网站发送的下载请求,上述目标网站运行有上述第一服务器;
上述确定单元502,具体用于确定上述下载请求所指定的目标数据;
上述发送单元503,具体用于向第二服务器发送下载指令,上述第二服务器未运行上述目标网站。
请参阅图3,图3是终端设备的浏览器界面的示意图。用户点击下载按键的操作就是通过浏览器向目标网站发送下载请求。举例来说,若用户点击了图3中软件1右侧的下载按键,就是向目标网站发送下载请求,请求下载软件1。上述第一服务器运行有上述目标网站,为上述目标网站提供服务。上述第一服务器在接收到上述目标网站发送的下载请求后,确定该下载请求包含的目标数据和需要下载该目标数据的终端设备的信息。上述第一服务器可以确定上述下载请求所指定的目标数据并向上述第二服务器发送下载指令。上述第二服务器未运行上述目标网站,不能直接为该终端设备提供下载服务。
本发明实施例中,上述终端设备通过浏览器向目标网站发送的下载请求后,上述第一服务器接收该下载请求并向未运行该目标网站的第二服务器发送下载指令,指示上述第二服务器向该终端设备发送目标数据。通过这种方式,提高该终端设备的下载速度。
本发明实施例还进一步提供了验证终端设备下载权限的实现方案,具体如下:进一步地,如图7所示,上述服务器还包括:
验证单元701,用于上述第一服务器验证上述终端设备的下载权限;
上述确定单元502,具体用于在上述下载权限验证通过后,确定上述下载请求所指定的目标数据并向第二服务器发送下载指令。
上述第一服务器根据从上述下载请求中提取出的该终端设备的授权信息,确定该终端设备的下载权限。在上述第一服务器确定该终端设备具备相应的下载权限后,确定上述下载请求所指定的目标数据并向第二服务器发送下载指令。
本发明实施例中,上述第一服务器在验证上述终端设备具备相应的下载权限后,才确定上述下载请求所指定的目标数据并向第二服务器发送下载指令,保证了资源下载的安全性。
本发明实施例还进一步提供了更新上述第二服务器中的第一数据的方法,具体如下:上述检测单元601,还用于检测上述目标数据中的第一数据是否已利用更新数据进行更新;
上述发送单元503,还用于在上述检测单元检测到上述目标数据中的第一数据已利用更新数据进行更新之后,向上述第二服务器发送更新指令,并将上述更新数据发送给上述第二服务器,上述更新指令指示上述第二服务器根据上述更新数据对上述第一数据进行更新。
上述目标数据中的第一数据可以利用更新数据进行更新。上述第一服务器在检测到上述目标数据中的第一数据进行更新后,获取上述更新数据,并向上述第二服务器发送更新指令和上述更新数据,上述更新指令指示上述第二服务器根据上述更新数据对上述第二服务器中的第一数据进行更新。
举例来说,当上述第一服务器检测到上述目标数据中的第一数据有更新数据后,查看上述第一服务器是否有该更新数据,若否,从其他服务器获取该更新数据。上述第一服务器检测到上述第二服务器中的第一数据未进行更新后,向上述第二服务器发送更新指令和上述更新数据。
本发明实施例中,上述第一服务器向上述第二服务器发送更新指令和上述更新数据,指示上述第二服务器根据上述更新数据对上述第二服务器中的第一数据进行更新。可以为用户提供最新版本的目标数据。
图8是本发明实施例提供的一种服务器结构示意图,该服务器800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)822(例如,一个或一个以上处理器)和存储器832,一个或一个以上存储应用程序842或数据844的存储介质830(例如一个或一个以上海量存储设备)。其中,存储器832和存储介质830可以是短暂存储或持久存储。存储在存储介质830的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器822可以设置为与存储介质830通信,在服务器800上执行存储介质830中的一系列指令操作。
服务器800还可以包括一个或一个以上电源826,一个或一个以上有线或无线网络接口850,一个或一个以上输入输出接口858,和/或,一个或一个以上操作系统841,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述中央处理器822,用于第一服务器在接收到终端设备发送的下载请求后,确定上述下载请求所指定的目标数据并向第二服务器发送下载指令;向上述第二服务器发送上述第二数据。
上述第一服务器例如可以是网络(World Wide Web)服务器、文件传输协议(File Transfer Protocol,FTP)服务器、企业关键应用服务器和其它关键任务服务器等。上述终端设备可以是台式电脑、笔记本电脑、手机、平板电脑等。上述第二服务器的类型可以和上述第一服务器相同,也可以不同。上述第一服务器和第二服务器可以为相同的网站提供服务,上述第二服务器也可以不为网站提供服务。上述下载请求可以包含上述终端设备的标识信息、网际协议地址(IP)信息和需要下载的目标数据的信息。上述第一服务器可以解析上述下载请求并提取出该下载请求中包含的目标数据的信息,进而确定上述终端设备所需的目标数据。上述第一服务器也可以从该下载请求中提出上述终端设备的标识信息或IP信息,再根据该标识信息或IP信息确定上述终端设备的下载权限。上述第一服务器可以在上述下载权限验证通过后,确定能够满足上述终端设备的下载需求例如下载速度、下载时延等的某个服务器为第二服务器。上述第一服务器向上述第二服务器发送下载指令。上述下载指令可以包含上述终端设备的信息和上述目标数据的信息。上述下载指令指示上述第二服务器向上述终端设备发送上述目标数据。如图2所示,上述目标数据包括第一数据和第二数据;上述第一服务器存储有上述第二数据,上述第二服务器存储有上述第一数据且未存储上述第二数据。举例来说,上述第一服务器可以在负载较重或者不能满足该终端设备的下载目标数据的需求时,向上述第二服务器发送下载指令指示上述第二服务器向上述终端设备发送上述目标数据。上述终端设备通过上述第二服务器下载上述目标数据可以满足该终端设备对下载速度的需求。
上述第二数据存储在上述第一服务器中。上述第二服务器存储有第一数据且未存储上述第二数据。上述第二数据例如可以是目标数据中的加密数据,每次下载时上述目标数据中的加密数据都是变化的。上述第一数据可以是目标数据中不变的数据,即每次下载时目标数据中的这一部分数据都不改变。上述第一服务器将上述第二数据发送上述第二服务器,上述第二服务器将接收到的上述第二数据和它本身存储的上述第一数据合并为上述目标数据后,发送给上述终端设备。本发明实施例并不限制第一数据和第二数据的类型和具体内容。
服务器之间的访问,一般速度都很快。当上述第一服务器不能满足该终端设备的下载需求时,可以指定上述第二服务器向该终端设备发送目标数据,并将上述第二服务器缺少的数据发送给上述第二服务器。
本发明实施例选择可以满足终端设备下载需求的服务器为第二服务器,通过该第二服务器向该终端设备发送目标数据,满足该终端设备的下载需求。
本发明实施例提供了一种确定第二服务器的方案,具体如下:上述中央处理器822,还用于在上述确定上述下载请求所指定的目标数据并向第二服务器发送下载指令之前,检测上述终端设备与上述第一服务器相关联的服务器之间的下载速度,确定下载速度满足上述终端设备的下载速度需求的服务器为第二服务器,上述相关联的服务器是存储有上述第一数据的服务器。
与上述第一服务器相关联的服务器可以有多个,这些服务器可以存储有第一数据也可以从上述第一服务器获取上述第一数据。上述第一服务器可以逐个检测与上述第一服务器相关联的服务器向该终端设备发送数据的速度,直到检测到可以满足该终端设备下载速度需求的服务器,将该服务器确定为第二服务器。上述第一服务器也可以根据已有的信息确定几个服务器为待检测的服务器,分别检测这几个待检测的服务器向该终端设备发送数据的速度,可以确定下载速度最快的服务器为第二服务器。本发明实施例不限于这两种确定第二服务器的方式,本发明实施例也可以采用其他方式确定第二服务器。
本发明实施例中,通过检测上述终端设备与上述第一服务器相关联的服务器之间的下载速度,确定可以满足该终端设备下载需求的服务器为第二服务器。本实施的方法可以提高用户的下载速度,改善用户体验。
本发明实施例中,上述第一服务器接收上述下载请求的方法可以如下:上述中央处理器822,用于上述第一服务器在接收到终端设备发送的下载请求后,确定上述下载请求所指定的目标数据并向第二服务器发送下载指令包括:
上述第一服务器在接收到终端设备通过浏览器向目标网站发送的下载请求后,确定上述下载请求所指定的目标数据并向第二服务器发送下载指令,上述第一服务器运行有上述目标网站,上述第二服务器未运行上述目标网站。
请参阅图3,图3是终端设备的浏览器界面的示意图。用户点击下载按键的操作就是通过浏览器向目标网站发送下载请求。上述第一服务器运行有上述目标网站,为上述目标网站提供服务。上述第一服务器在接收到上述目标网站发送的下载请求后,确定该下载请求包含的目标数据和需要下载该目标数据的终端设备的信息。上述第一服务器可以确定上述下载请求所指定的目标数据并向上述第二服务器发送下载指令。上述第二服务器未运行上述目标网站,不能直接为该终端设备提供下载服务。
本发明实施例中,上述终端设备通过浏览器向目标网站发送的下载请求后,上述第一服务器接收该下载请求并向未运行该目标网站的第二服务器发送下载指令,指示上述第二服务器向该终端设备发送目标数据。通过这种方式,提高该终端设备的下载速度。
本发明实施例还进一步提供了验证终端设备下载权限的实现方案,具体如下:上述中央处理器822,还用于在上述第一服务器接收到终端设备发送的下载请求后,在上述确定上述下载请求所指定的目标数据并向第二服务器发送下载指令之前,验证上述终端设备的下载权限;
在上述下载权限验证通过后,确定上述下载请求所指定的目标数据并向第二服务器发送下载指令。
上述第一服务器根据从上述下载请求中提取出的该终端设备的授权信息,确定该终端设备的下载权限。在上述第一服务器确定该终端设备具备相应的下载权限后,确定上述下载请求所指定的目标数据并向第二服务器发送下载指令。
本发明实施例中,上述第一服务器在验证上述终端设备具备相应的下载权限后,才确定上述下载请求所指定的目标数据并向第二服务器发送下载指令,保证了资源下载的安全性。
本发明实施例还进一步提供了更新上述第二服务器中的第一数据的方法,具体如下:上述中央处理器822,还用于检测上述目标数据中的第一数据是否已利用更新数据进行更新;
若是,向上述第二服务器发送更新指令和上述更新数据,上述更新指令指示上述第二服务器根据上述更新数据对上述第二服务器中的第一数据进行更新。
上述目标数据中的第一数据可以利用更新数据进行更新。上述第一服务器在检测到上述目标数据中的第一数据进行更新后,获取上述更新数据,并向上述第二服务器发送更新指令和上述更新数据,上述更新指令指示上述第二服务器根据上述更新数据对上述第二服务器中的第一数据进行更新。
举例来说,当上述第一服务器检测到上述目标数据中的第一数据有更新数据后,查看上述第一服务器是否有该更新数据,若否,从其他服务器获取该更新数据。上述第一服务器检测到上述第二服务器中的第一数据为进行更新后,向上述第二服务器发送更新指令和上述更新数据。
本发明实施例中,上述第一服务器向上述第二服务器发送更新指令和上述更新数据,指示上述第二服务器根据上述更新数据对上述第二服务器中的第一数据进行更新。可以为用户提供最新版本的目标数据。
上述实施例中由服务器所执行的步骤可以基于该图8所示的服务器结构。
以上仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。