CN116455885A - 网络资源下载方法、装置、设备和存储介质 - Google Patents
网络资源下载方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN116455885A CN116455885A CN202210015374.5A CN202210015374A CN116455885A CN 116455885 A CN116455885 A CN 116455885A CN 202210015374 A CN202210015374 A CN 202210015374A CN 116455885 A CN116455885 A CN 116455885A
- Authority
- CN
- China
- Prior art keywords
- resource
- address
- server
- target
- backup
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 115
- 238000003860 storage Methods 0.000 title claims abstract description 44
- 230000004044 response Effects 0.000 claims abstract description 89
- 230000005540 biological transmission Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 7
- 238000012916 structural analysis Methods 0.000 claims description 5
- 238000005516 engineering process Methods 0.000 abstract description 7
- 238000013473 artificial intelligence Methods 0.000 abstract description 5
- 238000004891 communication Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 9
- 238000007726 management method Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 5
- 238000012384 transportation and delivery Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000003862 health status Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000012954 risk control Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- 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/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请提供了一种网络资源下载方法、装置、设备和存储介质,涉及互联网技术领域,可以应用于云技术、人工智能、智慧交通、辅助驾驶等各种场景,包括:终端解析目标应用程序发送的针对目标网络资源的资源下载请求,得到目标资源地址,向第一服务器发送携带目标资源地址的地址查询请求;第一服务器对目标资源地址进行类别特征识别,在识别到满足预设特征条件的情况下,获取与目标资源地址关联存储的备份资源地址;并向终端发送携带有备份资源地址的地址查询响应信息;终端将资源下载请求中的目标资源地址更新为备份资源地址,并向第三服务器发送得到的更新的资源下载请求,得到第三服务器发送的备份网络资源。本申请能够有效提高下载速度和成功率。
Description
技术领域
本申请涉及互联网技术领域,尤其涉及一种网络资源下载方法、装置、设备和存储介质。
背景技术
终端从服务器下载资源时,若距离服务器过远,则会产生较长的网络延时,影响下载速度。此外,在带宽分配不足或服务器设置了传输限速的情况下,也会影响下载过慢或导致下载失败。如从境外服务器拉取网络资源,由于跨境距离长、通信链路长和国际带宽有限等,网络传输延时较高,下载速度慢且失败率高,带宽成本也非常高。因此,需要提供一种改进的网络资源下载方案,以优化上述资源下载场景中的下载速度,降低网络延时和下载失败率。
发明内容
本申请提供了一种网络资源下载方法、装置、设备和存储介质,可以有效提高下载速度和稳定性。
一方面,本申请提供了一种网络资源下载方法,应用于终端,所述方法包括:
响应于目标应用程序发送的针对目标网络资源的资源下载请求,对所述资源下载请求进行解析,得到目标资源地址;所述目标资源地址为所述目标网络资源在第二服务器中的网络地址;
向第一服务器发送携带所述目标资源地址的地址查询请求;
接收所述第一服务器发送的所述地址查询请求对应的地址查询响应信息,所述地址查询响应信息携带有与所述目标资源地址关联存储的备份资源地址;所述备份资源地址是由所述第一服务器对所述目标资源地址进行类别特征识别,并在识别到所述目标资源地址的类别特征满足预设特征条件的情况下获取的;所述备份资源地址为所述目标网络资源对应的备份网络资源在第三服务器中的网络地址;
将所述资源下载请求中的目标资源地址更新为所述备份资源地址,得到更新的资源下载请求;
向所述第三服务器发送所述更新的资源下载请求,得到所述第三服务器发送的备份网络资源;
其中,所述第二服务器与所述第三服务器的物理位置位于不同区域,且所述第二服务器与所述第一服务器间的物理距离大于所述第三服务器与所述第一服务器间的物理距离。
另一方面提供了一种网络资源下载方法,应用于第一服务器,所述方法包括:
接收终端发送的携带有目标资源地址的地址查询请求;所述目标资源地址是所述终端对目标应用程序发送的针对目标网络资源的资源下载请求进行解析得到的,为所述目标网络资源在第二服务器中的网络地址;
对所述目标资源地址进行类别特征识别;
在识别到所述目标资源地址的类别特征满足预设特征条件的情况下,获取与所述目标资源地址关联存储的备份资源地址;所述备份资源地址为所述目标网络资源对应的备份网络资源在第三服务器中的网络地址;
向所述终端发送所述地址查询请求对应的地址查询响应信息,所述地址查询响应信息携带有与所述目标资源地址关联存储的备份资源地址;
其中,所述第二服务器与所述第三服务器的物理位置位于不同区域,且所述第二服务器与所述第一服务器间的物理距离大于所述第三服务器与所述第一服务器间的物理距离。
另一方面提供了一种网络资源下载装置,应用于终端,所述装置包括:
资源下载请求解析模块:用于响应于目标应用程序发送的针对目标网络资源的资源下载请求,对所述资源下载请求进行解析,得到目标资源地址;所述目标资源地址为所述目标网络资源在第二服务器中的网络地址;
地址查询请求发送模块:用于向第一服务器发送携带所述目标资源地址的地址查询请求;
地址查询响应接收模块:用于接收所述第一服务器发送的所述地址查询请求对应的地址查询响应信息,所述地址查询响应信息携带有与所述目标资源地址关联存储的备份资源地址;所述备份资源地址是由所述第一服务器对所述目标资源地址进行类别特征识别,并在识别到所述目标资源地址的类别特征满足预设特征条件的情况下获取的;所述备份资源地址为所述目标网络资源对应的备份网络资源在第三服务器中的网络地址;
下载请求更新模块:用于将所述资源下载请求中的目标资源地址更新为所述备份资源地址,得到更新的资源下载请求;
备份网络资源获取模块:用于向所述第三服务器发送所述更新的资源下载请求,得到所述第三服务器发送的备份网络资源;
其中,所述第二服务器与所述第三服务器的物理位置位于不同区域,且所述第二服务器与所述第一服务器间的物理距离大于所述第三服务器与所述第一服务器间的物理距离。
另一方面提供了一种网络资源下载装置,应用于第一服务器,所述装置包括:
地址查询请求接收模块:用于接收终端发送的携带有目标资源地址的地址查询请求;所述目标资源地址是所述终端对目标应用程序发送的针对目标网络资源的资源下载请求进行解析得到的,为所述目标网络资源在第二服务器中的网络地址;
类别特征识别模块:用于对所述目标资源地址进行类别特征识别;
备份资源地址获取模块:用于在识别到所述目标资源地址的类别特征满足预设特征条件的情况下,获取与所述目标资源地址关联存储的备份资源地址;所述备份资源地址为所述目标网络资源对应的备份网络资源在第三服务器中的网络地址;
备份资源地址发送模块:用于向所述终端发送所述地址查询请求对应的地址查询响应信息,所述地址查询响应信息携带有与所述目标资源地址关联存储的备份资源地址;
其中,所述第二服务器与所述第三服务器的物理位置位于不同区域,且所述第二服务器与所述第一服务器间的物理距离大于所述第三服务器与所述第一服务器间的物理距离。
另一方面提供了一种计算机设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上述的网络资源下载方法。
另一方面提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现如上述的网络资源下载方法。
另一方面提供了一种服务器,所述服务器包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上述的网络资源下载方法。
另一方面提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上述的网络资源下载方法。
另一方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令被处理器执行时实现如上述的网络资源下载方法。
本申请提供的网络资源下载方法、装置、设备、存储介质、服务器、终端、计算机程序和计算机程序产品,具有如下技术效果:
本申请的技术方案终端响应于目标应用程序发送的针对目标网络资源的资源下载请求,对资源下载请求进行解析,得到目标资源地址;目标资源地址为目标网络资源在第二服务器中的网络地址;向第一服务器发送携带目标资源地址的地址查询请求;第一服务器对目标资源地址进行类别特征识别,在识别到目标资源地址的类别特征满足预设特征条件的情况下,获取与目标资源地址关联存储的备份资源地址;备份资源地址为目标网络资源对应的备份网络资源在第三服务器中的网络地址,并向终端发送地址查询请求对应的、携带有与目标资源地址关联存储的备份资源地址的地址查询响应信息;终端将资源下载请求中的目标资源地址更新为备份资源地址,得到更新的资源下载请求,并向第三服务器发送更新的资源下载请求,得到第三服务器发送的备份网络资源。其中,第二服务器与第三服务器的物理位置位于不同区域,且第二服务器与第一服务器间的物理距离大于第三服务器与第一服务器间的物理距离。通过将针对第二服务器发送的资源下载请求转换为针对第三服务器发送的请求,以从通信距离和链路更短的第三服务器下载备份资源,能够有效降低网络延迟,提高资源下载速度、稳定性和成功率,且节约指定互联网出口的带宽占用和成本。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1是本申请实施例提供的一种应用环境的示意图;
图2是本申请实施例提供的一种网络资源下载方法的流程示意图;
图3是本申请实施例提供的一种URL地址的获取方法的流程示意图;
图4是本申请实施例提供的另一种网络资源下载方法的流程示意图;
图5是本申请实施例提供的一种网络资源下载方法的流程示意图;
图6是本申请实施例提供的一种网络资源下载方法的流程示意图;
图7是本申请实施例提供一种网络资源下载装置的框架示意图;
图8是本申请实施例提供一种网络资源下载装置的框架示意图;
图9是本申请实施例提供的一种网络资源下载方法的电子设备的硬件结构框图;
图10是本申请实施例提供的一个区块链***的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或子模块的过程、方法、***、产品或服务器不必限于清楚地列出的那些步骤或子模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或子模块。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
HTTP(Hyper Text Transfer Protocol,超文本传输协议):是一种请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。
CDN(Content Delivery Network,即内容分发网络):CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。
URL(uniform resource locator,统一资源定位***):是因特网的万维网服务程序上用于指定信息位置的表示方法。
VPN(Virtual Private Network,虚拟专用网络):在公用网络上建立专用网络,进行加密通讯。在企业网络中有广泛应用。VPN网关通过对数据包的加密和数据包目标地址的转换实现远程访问。VPN可通过服务器、硬件、软件等多种方式实现。
虚拟网卡:又称虚拟网络适配器,即用软件模拟网络环境,模拟网络适配器。
请参阅图1,图1是本申请实施例提供的一种应用环境的示意图,如图1所示,该应用环境可以至少包括终端01,第一服务器02,第二服务器03和第三服务器04。在实际应用中,终端01,第一服务器02,第二服务器03和第三服务器04可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
本申请实施例中的服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。
具体的,云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。它将计算任务分布在大量计算机构成的资源池上,使各种应用***能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。其中,人工智能云服务,一般也被称作是AIaaS(AI as a Service,中文为“AI即服务”)。这是目前主流的一种人工智能平台的服务方式,具体来说AIaaS平台会把几类常见的AI服务进行拆分,并在云端提供独立或者打包的服务。这种服务模式类似于开了一个AI主题商城:所有的开发者都可以通过API接口的方式来接入使用平台提供的一种或者是多种人工智能服务,部分资深的开发者还可以使用平台提供的AI框架和AI基础设施来部署和运维自已专属的云人工智能服务。
具体地,上述涉及的服务器可以包括实体设备,可以具体包括有网络通信子模块、处理器和存储器等等,也可以包括运行于实体设备中的软体,可以具体包括有应用程序等。
本申请实施例中,终端01可以包括智能手机、台式电脑、平板电脑、笔记本电脑、数字助理、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、智能语音交互设备、智能家电、智能可穿戴设备、车载终端设备等类型的实体设备,也可以包括运行于实体设备中的软体,例如应用程序等。
本申请实施例中,终端01可以运行目标应用程序,该目标应用程序针对目标网络资源生成资源下载请求,终端01对目标应用程序的资源下载请求进行解析,并将得到的目标资源地址通过地址查询请求发送至第一服务器02,在接收到第一服务器02反馈的携带备份资源地址的地址查询响应信息的情况下,生成携带有备份资源地址的更新的资源下载请求,并将其发送至第三服务器04,以获取备份网络资源;在接收到第一服务器02反馈的表征不存在备份资源地址的响应信息的情况下,将资源下载请求发送至第二服务器03,以获取目标网络资源。
第一服务器02可以为后台服务器,后台服务器中关联存储有目标资源地址和对应的备份资源地址,用于响应于终端01发送的携带有目标资源地址的地址查询请求,对目标资源地址进行特征识别,在识别到目标资源地址的类别特征满足预设特征条件的情况下,获取其对应的备份资源地址,并将其发送至终端01,以使终端01向第三服务器04发送更新的资源下载请求;第一服务器02还存储有与资源地址关联存储的备份更新时间信息,可以根据备份更新时间信息判断备份资源地址对应的备份网络资源是否过期,以及在识别到目标资源地址的类别特征不满足预设特征条件,未获取到关联的备份资源地址,或备份网络资源为过期资源的情况下,向终端01发送表征不存在备份资源地址的响应信息,以使终端02向第二服务器03发送资源下载请求。
具体的,第二服务器03与第三服务器04的物理位置位于不同区域,且第二服务器03与第一服务器02间的物理距离大于第三服务器04与第一服务器02间的物理距离。以及,第二服务器03与终端01间的物理距离大于第三服务器04与终端01间的物理距离。例如,第二服务器03可以为境外服务器,存储有目标网络资源,第三服务器04可以为就近部署的境内服务器,如CDN服务器等,存储有备份网络资源,相应的,终端01在境内发送资源下载请求。
具体的,第一服务器02还用于从第二服务器03获取目标网络资源,并将目标网络资源发送至第三服务器04备份存储,第三服务器04将目标网络资源存储为备份网络资源,并将备份网络资源在第三服务器04上的备份资源地址发送至第一服务器02,第一服务器02将备份资源地址与目标资源地址关联存储。在一些情况下,第一服务器02还从第二服务器03获取目标网络资源的更新时间信息,并将更新时间信息与目标资源地址关联存储。
此外,可以理解的是,图1所示的仅仅是一种网络资源下载方法的应用环境,该应用环境可以包括更多或更少的节点,本申请在此不做限制。
本申请实施例涉及的应用环境,或应用环境中的终端01,第一服务器02,第二服务器03和第三服务器04等可以是由客户端、多个节点(接入网络中的任意形式的计算设备,如服务器、用户终端)通过网络通信的形式连接形成的分布式***。分布式***可以为区块链***,该区块链***可以提供上述的网络资源下载服务和数据存储服务等。
参见图10,图10是本发明实施例提供的分布式***100应用于区块链***的一个可选的结构示意图,由多个节点(接入网络中的任意形式的计算设备,如服务器、用户终端)和客户端形成,节点之间形成组成的点对点(P2P,Peer To Peer)网络,P2P协议是一个运行在传输控制协议(TCP,Transmission Control Protocol)协议之上的应用层协议。在分布式***中,任何机器如服务器、终端都可以加入而成为节点,节点包括硬件层、中间层、操作***层和应用层。
其中,区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新兴应用模式,本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监测等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监测和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监测模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监测网络情况、监测节点设备健康状态等。平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务参与方进行使用。
以下基于上述应用环境介绍本申请的一种网络资源下载方法,本申请实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。在存储网络资源的服务器通信距离过远、带宽分配不足或传输限速设置的场景下,会影响下载速度或导致下载失败。例如在境外游戏资源下载场景中,境外游戏启动后需要去境外服务器拉取对应游戏资源或者游戏更新包,这时需要从指定的国际互联网出口通过专线进行资源拉取,从而导致延时的增加,也受限于国际互联网出口的带宽限制,以及境外服务器的传输设置限制,致使载速度较慢,下载失败率高和带宽成本高等问题。请参考图2,图2是本申请实施例提供的一种网络资源下载方法的流程示意图,本说明书提供了如实施例或流程图的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的***或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的,如图2所示,方法可以包括下述步骤。
S201:终端响应于目标应用程序发送的针对目标网络资源的资源下载请求,对资源下载请求进行解析,得到目标资源地址。
本申请实施例中,目标资源地址为目标网络资源在第二服务器中的网络地址,表征目标网络资源在第二服务器中的存储位置,第二服务器可以为存储目标网络资源的源站。第三服务器提供目标网络资源的备份存储服务,即存储有资源下载请求对应的备份网络资源,第二服务器与第三服务器的物理位置位于不同区域,如第二服务器为境外服务器,第三服务器为境内服务器,且第二服务器与第一服务器间的物理距离大于第三服务器与第一服务器间的物理距离。相应的,第二服务器与终端间的物理距离大于第三服务器与终端间的物理距离。举例来说,第一服务器为后台服务器,第二服务器为境外服务器,与第一服务器和终端间的通信物理链路长,或者需要通过指定的国际互联网出口进行通信,网络延时长,下载速度慢,且带宽有限,致使数据传输不稳定易下载失败;第三服务器可以为境内服务器,与终端就近部署,例如为CND服务器等,与第一服务器间的通信物理距离短,带宽限制少且带宽成本低,通信稳定,传输速度快。
本申请实施例中,目标应用程序为具有指定包名的应用程序,如可以为游戏应用程序,例如指定的境外游戏应用程序。目标应用程序需下载更新资源包或更新安装包等目标网络资源的情况下,会生成携带目标网络资源的目标资源地址的资源下载请求。终端在检测到目标应用程序发送该资源下载请求的情况下,对其进行拦截并解析,得到目标资源地址。具体的,目标资源地址可以为URL地址。
在实际应用中,S201之前,方法还可以包括下述步骤。
S101:启动虚拟专用网络服务。
S103:通过虚拟专用网络服务拦截目标应用程序发送的资源下载请求。
具体的,可以利用下载处理程序(如加速器)启动虚拟专用网络服务。虚拟专用网络服务可以为预先设置于终端的VPN服务,能够拦截指定包名流量,利用该虚拟专用网络服务,通过虚拟网卡拦截指定包名的目标应用程序发送的所有网络请求,以实现后续的解析处理。
在一些情况下,也可以利用hook方式替换虚拟专用网络服务,以截取目标应用程序的资源下载请求并获取目标资源地址。
在实际应用中,S201可以具体包括下述步骤。
S2011:对资源下载请求的网络层数据包进行结构解析,得到资源下载请求的协议信息和传输层数据包。
S2013:根据协议信息对传输层数据包进行解析,得到资源下载请求的请求数据。
S2015:从请求数据的请求头中获取目标资源地址。
具体的,当目标应用程序发送资源下载请求被拦截后,可以通过虚拟网络服务中与资源下载请求对应的控制信息获取其网络层数据包。通过解析网络层数据包的结构,能够根据网络层数据结构字段中的协议字段确定上层所使用的协议,即得到协议信息,并得到传输层数据包。基于该协议信息进一步对传输层数据包进行结构解析,能够得到请求数据,从请求数据请求头的地址字段中获取目标资源地址。
具体的,该控制信息可以为虚拟专用网络服务的文件句柄(fd),网络层数据包可以为IP数据包,相应的,传输层数据包可以为TCP数据包,请求数据为HTTP数据,HTTP数据的请求头中包括资源下载请求的URL地址。在一个实施例中,请参考图3,URL地址的获取过程可以具体为:目标应用程序的资源下载请求被虚拟网关拦截;下载处理程序(如加速器)根据虚拟网卡中的fd获取IP数据包,解析IP数据包得到TCP数据包,解析TCP数据包得到HTTP数据中的URL。
S203:终端向第一服务器发送携带目标资源地址的地址查询请求。
本申请实施例中,终端在得到目标资源地址后,延迟向第二服务器发送资源下载请求,生成携带该目标资源地址的地址查询请求,并将其发送至第一服务器。
S205:第一服务器在接收到终端发送的携带有目标资源地址的地址查询请求后,对目标资源地址进行类别特征识别。
本申请实施例中,第一服务器为终端的后台服务器,并设置有地址缓存数据库,用于存储满足预设特征条件的资源地址和对应的备份资源地址。第一服务器响应于地址查询请求,对目标资源地址进行类别特征识别,得到对应的类别特征,进而判断该类别特征是否满足预设特征条件。类别特征可以包括但不限于目标资源地址的域名类别特征和数据文件格式特征等。在一些实施例中,接收到目标资源地址后,识别目标资源地址中的域名字段和文件格式字段,将识别到的域名字段与预设域名进行匹配,以及将识别到的文件格式字段与预设文件格式进行匹配,在匹配到对应的预设域名和预设文件格式的情况下,确定目标资源地址的类别特征满足预设特征条件,若任一未匹配到,则目标资源地址的类别特征不满足预设特征条件。举例来说,目标资源地址为URL地址,目标应用程序为游戏应用程序,第一服务器响应于地址查询请求,识别URL地址中的游戏域名字段和资源格式后缀字段,资源格式后缀字段表征目标网络资源的文件格式,若匹配到游戏域名字段为境外游戏域名且资源格式后缀字段为exe和dat等文件格式,则确定URL地址的类别特征满足预设特征条件。
S207:第一服务器在识别到目标资源地址的类别特征满足预设特征条件的情况下,获取与目标资源地址关联存储的备份资源地址。
本申请实施例中,备份资源地址为目标网络资源对应的备份网络资源在第三服务器中的网络地址,表征备份网络资源在第三服务器中的存储位置。备份资源地址与目标资源地址关联存储。在满足预设特征条件的情况下,进行备份资源地址的查找。具体的,从地址缓存数据库中查找与目标资源地址关联存储的备份资源地址,可以以目标资源地址为key进行查找。在查找到存在对应的备份资源地址的情况下,表明第三服务器中已存储有第二服务器中目标网络资源的备份网络资源。
S209:第一服务器向终端发送地址查询请求对应的地址查询响应信息,地址查询响应信息携带有与目标资源地址关联存储的备份资源地址。
本申请实施例中,第一服务器响应于地址查询请求向终端发送对应的地址响应信息,该地址响应信息携带有查找到的备份资源地址。
S211:终端接收到第一服务器发送的地址查询请求对应的地址查询响应信息后,将资源下载请求中的目标资源地址更新为备份资源地址,得到更新的资源下载请求。
S213:终端向第三服务器发送更新的资源下载请求,得到第三服务器发送的备份网络资源。
本申请实施例中,终端接收到备份资源地址后,将资源下载请求的请求数据中的目标资源地址替换为备份资源地址,得到更新的请求数据;然后基于前述的协议信息对更新的请求数据进行封装,得到更新的传输层数据包,并将其封装为更新的网络层数据包,最终得到更新的资源下载请求和对应的请求数据包,将其发送至第三服务器,以使第三服务器响应于更新的资源下载请求查找并反馈备份资源地址对应的备份网络资源。举例来说,资源下载请求为游戏应用程序针对境外游戏网络资源发送的游戏资源下载请求,下载处理程序在接收到第一服务器发送的境内缓存的备份资源地址后,对游戏应用程序发送的游戏资源下载请求进行更新,将其http数据中的游戏url和host替换成备份资源地址,然后重新生成更新的TCP数据包,进而封装为更新的IP数据包,最终得到更新的游戏资源下载请求,并通过真实网卡发送至第三服务器(境内服务器),第三服务器接收到请求后响应该请求反馈存储的备份网络资源至游戏应用程序。
基于上述技术方案,将针对第二服务器发送的资源下载请求转换为针对第三服务器发送的请求,以从通信距离和链路更短的第三服务器下载备份资源,能够有效降低网络延迟,提高资源下载速度、稳定性和成功率,且节约指定互联网出口的带宽占用和成本。
本申请实施例中,方法还包括下述步骤。
S215:第一服务器在识别到目标资源地址的类别特征不满足预设特征条件,或者未获取到关联的备份资源地址的情况下,向终端发送表征不存在备份资源地址的响应信息。
在实际应用中,该响应信息可以携带有表征不存在备份资源地址的标识码。
S217:终端在接收到第一服务器发送的表征不存在备份资源地址的响应信息的情况下,向第二服务器发送资源下载请求,以从第二服务器获取目标网络资源。
在实际应用中,针对查找不到缓存的备份资源地址或者非指定类别特征的的目标资源地址,下载处理程序收到第一服务器返回的响应信息后,会将原始资源下载请求还原为网络层数据包,然后通过真实网卡发送至第二服务器,以使第二服务器反馈目标网络资源至终端。
S219:第一服务器在识别到目标资源地址的类别特征满足预设特征条件,且未获取到关联的备份资源地址的情况下,基于目标资源地址向第二服务器发送对应的资源下载请求,以从第二服务器获取目标网络资源。
在实际应用中,若目标资源地址的类别特征满足预设特征条件,但第一服务器缓存中未存储目标资源地址对应的备份资源地址,表明该资源下载请求为针对该目标网络资源的初次请求,第一服务器向第二服务器发送携带目标资源地址的资源下载请求,以使第二服务器将目标网络资源发送至第一服务器。
S221:第一服务器向第三服务器发送目标网络资源,以使第三服务器将目标网络资源作为对应的备份网络资源进行存储,并向第一服务器发送备份网络资源的备份资源地址。
S223:第一服务器接收到第三服务器发送的备份资源地址,将目标资源地址和备份资源地址关联存储。
在实际应用中,第一服务器在接收到目标网络资源后,将其发送至第三服务器进行备份存储,生成对应的备份网络资源,能够降低第一服务器的存储压力,避免影响处理速度。第三服务器存储备份网络资源后,将备份资源地址发送至第一服务器,第一服务器构建目标资源地址与备份资源地址间的关联关系,以进行关联存储。如此,再次接收到携带该目标资源地址的地址查询请求后,将备份资源地址反馈至终端,以使终端从第三服务器进行资源下载,提高下载速度和稳定性,节约指定互联网出口带宽。
基于上述部分或全部实施方式,请参考图4,本申请实施例提供另一种网络资源下载方法,包括下述步骤。
S301:终端响应于目标应用程序发送的针对目标网络资源的资源下载请求,对资源下载请求进行解析,得到目标资源地址。
S303:终端向第一服务器发送携带目标资源地址的地址查询请求。
S305:第一服务器在接收到终端发送的携带有目标资源地址的地址查询请求后,对目标资源地址进行类别特征识别。
S307:第一服务器在识别到目标资源地址的类别特征满足预设特征条件的情况下,获取与目标资源地址关联存储的备份资源地址。
可以理解的,步骤S301-S307与前述步骤S201-S207的具体实施方式相类似,在此不再赘述。
S309:第一服务器获取与目标资源地址关联存储的备份网络资源的备份更新时间信息。
本申请实施例中,第一服务器的地址缓存数据库中还存储有目标资源地址对应的备份更新时间信息,备份更新时间信息表征与备份网络资源对应的存储于第二服务器的网络资源的最后被修改时间。该备份更新时间信息为第一服务器前一次向第二服务器请求相应的网络资源时,第二服务器反馈该网络资源时携带的修改时间信息。具体的,该备份更新时间信息可以为Last-Modified字段。
S311:第一服务器向第二服务器发送携带有目标资源地址的时间信息查询请求。
S313:第一服务器接收第二服务器发送的时间信息查询请求对应的时间查询响应信息,时间查询响应信息携带有目标网络资源的更新时间信息。
本申请实施例中,第二服务器的目标网络资源可能存在更新版本,而第一服务器中的备份资源地址和第三服务器中存储的备份网络资源可能不是当前的更新版本,通过第一服务器向第二服务器发送时间信息查询请求,以使第二服务器基于目标资源地址获取对应目标网络资源的更新时间信息,并将生成携带目标网络资源的更新时间信息的网络响应信息,然后发送至第一服务器。第二服务器发送的目标网络资源的更新时间信息,表征目标网络资源的最新版本的最后被修改时间。
S315:第一服务器在备份更新时间信息与目标网络资源的更新时间信息一致的情况下,向终端发送地址查询请求对应的地址查询响应信息,地址查询响应信息携带有与目标资源地址关联存储的备份资源地址。
本申请实施例中,第一服务器将备份更新时间信息与目标网络资源的更新时间信息进行比较,若一致,确定第三服务器中存储的备份网络资源未过期,触发地址查询响应信息的发送步骤。
S317:终端接收到第一服务器发送的目标资源地址对应的备份资源地址后,将资源下载请求中的目标资源地址更新为备份资源地址,得到更新的资源下载请求。
S319:终端向第三服务器发送更新的资源下载请求,得到第三服务器发送的备份网络资源。
可以理解的,S315-S319与前述S209-S213的具体实施方式相类似,在此不再赘述。
S321:第一服务器在备份更新时间信息与目标网络资源的更新时间信息不一致的情况下,确定备份资源地址对应的备份网络资源为过期资源。
本申请实施例中,若二者不一致,表明第二服务器中的目标网络资源的版本与备份网络资源的版本不一致,若目标网络资源的更新时间晚于备份更新时间,即目标网络资源已更新版本,确定第三服务器中存储的备份网络资源为过期资源,则触发步骤S323和S327。
S323:第一服务器在识别到目标资源地址的类别特征不满足预设特征条件,未获取到关联的备份资源地址,或备份资源地址对应的备份网络资源为过期资源的情况下,向终端发送表征不存在备份资源地址的响应信息。
S325:终端在接收到第一服务器发送的表征不存在备份资源地址的响应信息的情况下,向第二服务器发送资源下载请求,以从第二服务器获取目标网络资源。
S327:第一服务器在识别到目标资源地址的类别特征满足预设特征条件,且未获取到关联的备份资源地址或备份资源地址对应的备份网络资源为过期资源的情况下,基于目标资源地址向第二服务器发送对应的资源下载请求,以从第二服务器获取目标网络资源和对应的更新时间信息。
S329:第一服务器向第三服务器发送目标网络资源,以使第三服务器将目标网络资源作为对应的备份网络资源进行存储,并向第一服务器发送备份网络资源的备份资源地址。
S331:第一服务器接收第三服务器发送的备份资源地址后,将目标资源地址、备份资源地址和对应的更新时间信息关联存储。
可以理解的,S323-S325与前述S215-S217,S329-S333与前述S221-S225的具体实施方式相类似,在此不再赘述。
本申请实施例中,若目标资源地址的类别特征满足预设特征条件,确定需要对目标网络资源进行备份存储。此时,若第一服务器缓存中未存储目标资源地址对应的备份资源地址和备份更新时间信息,即查找不到备份资源地址,表明该资源下载请求为针对该目标网络资源的初次请求;或者若备份资源地址对应的备份网络资源为过期资源,表明第一服务器中缓存的备份资源地址和备份更新时间,以及第三服务器存储的备份网络资源需更新。相应的,第一服务器向第二服务器发送携带目标资源地址的资源下载请求,以使第二服务器将目标网络资源和对应的更新时间信息发送至第一服务器,第一服务器在接收到目标网络资源后,将其发送至第三服务器进行存储,第三服务器存储目标网络资源以生成备份网络资源后,将对应的备份资源地址发送至第一服务器,第一服务器构建目标资源地址、备份资源地址和更新时间信息间的关联关系,以进行关联存储,可以理解的,这里关联存储的更新时间信息即为前述的备份更新时间信息。
需要说明的是,第一服务器可以周期性基于缓存的各目标资源地址向第二服务器发送对应的时间信息查询请求,以获取最新的更新时间信息,并在时间信息不一致的情况下,基于上述S327-S335周期性更新备份资源地址、备份更新时间信息和备份网络资源。
基于上述方案,不仅能够有效降低网络延迟,提高资源下载速度、稳定性和成功率,且节约指定互联网出口的带宽占用和成本,还能避免终端下载过期资源,防止下载事故。
在一些实施例中,由于终端与第二服务器间的通信限制和不稳定性,终端从第二服务器拉取目标网络资源的过程中,可能出现下载时间过长或下载失败的情况,相应的,S327后,方法还可以包括步骤S337:终端在目标网络资源的传输时长超过预设时长和/或下载失败的情况下,向第三服务器发送携带备份资源地址的备份资源下载请求,以从第三服务器获取备份资源地址对应的备份网络资源。如此,在无法获取最新的目标网络资源的情况下,利用旧版本的备份网络资源进行资源替代,在使用者无感情况下提供资源服务,显著改善用户体验。
本申请提供的网络资源下载方法,在源站服务器与终端的通信链路过长或有带宽限制的情况下,如针对存储与境外服务器的境外网络资源下载的场景,利用终端对目标应用程序的资源下载请求进行拦截,并在得到备份资源地址和目标资源地址满足预设特征条件的情况下,对资源下载请求进行重定向,将从源站下载目标网络资源,替换为从就近部署的服务器下载备份网络资源,如境内就近的CDN服务器中的备份网络资源,从而解决网络资源失败率高和下载速度慢的问题,尤其在大文件下载场景中,不受国际数据传输中的带宽限制,可以根据需要提高带宽上限,同时避免传输距离造成的网络延迟影响,有效提高下载速度和成功率,节约国际带宽,降低资源下载成本。
以下基于上述应用环境介绍本申请的一种网络资源下载方法,应用于终端,请参考图5,图5是本申请实施例提供的一种网络资源下载方法的流程示意图,本说明书提供了如实施例或流程图的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的***或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的,如图5所示,方法可以包括下述步骤。
S401:响应于目标应用程序发送的针对目标网络资源的资源下载请求,对资源下载请求进行解析,得到目标资源地址;目标资源地址为目标网络资源在第二服务器中的网络地址。
S403:向第一服务器发送携带目标资源地址的地址查询请求。
S405:接收第一服务器发送的地址查询请求对应的地址查询响应信息,地址查询响应信息携带有与目标资源地址关联存储的备份资源地址;备份资源地址是由第一服务器对目标资源地址进行类别特征识别,并在识别到目标资源地址的类别特征满足预设特征条件的情况下获取的;备份资源地址为目标网络资源对应的备份网络资源在第三服务器中的网络地址。
S407:将资源下载请求中的目标资源地址更新为备份资源地址,得到更新的资源下载请求。
S409:向第三服务器发送更新的资源下载请求,得到第三服务器发送的备份网络资源。
其中,第二服务器与第三服务器的物理位置位于不同区域,且第二服务器与第一服务器间的物理距离大于第三服务器与第一服务器间的物理距离。
在一些实施例中,方法还包括步骤S411:在接收到第一服务器发送的表征不存在备份资源地址的响应信息的情况下,向第二服务器发送资源下载请求,以从第二服务器获取目标网络资源;表征不存在备份资源地址的响应信息为第一服务器在识别到目标资源地址的类别特征不满足预设特征条件,未获取到关联的备份资源地址,或备份资源地址对应的备份网络资源为过期资源的情况下生成的。
在一些实施例中,在S401之前,方法还可以包括下述步骤。
S501:启动虚拟专用网络服务。
S503:通过虚拟专用网络服务拦截目标应用程序发送的资源下载请求。
在一些实施例中,S401可以包括下述步骤。
S4011:对资源下载请求的网络层数据包进行结构解析,得到资源下载请求的协议信息和传输层数据包。
S4012:根据协议信息对传输层数据包进行解析,得到资源下载请求的请求数据。
S4013:从请求数据的请求头中获取目标资源地址。
以下基于上述应用环境介绍本申请的一种网络资源下载方法,应用于第一服务器,请参考图6,图6是本申请实施例提供的一种网络资源下载方法的流程示意图,本说明书提供了如实施例或流程图的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的***或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的,如图6所示,方法可以包括下述步骤。
S601:接收终端发送的携带有目标资源地址的地址查询请求;目标资源地址是终端对目标应用程序发送的针对目标网络资源的资源下载请求进行解析得到的,为目标网络资源在第二服务器中的网络地址。
S603:对目标资源地址进行类别特征识别。
S605:在识别到目标资源地址的类别特征满足预设特征条件的情况下,获取与目标资源地址关联存储的备份资源地址;备份资源地址为目标网络资源对应的备份网络资源在第三服务器中的网络地址。
S607:向终端发送地址查询请求对应的地址查询响应信息,地址查询响应信息携带有与目标资源地址关联存储的备份资源地址。
其中,第二服务器与第三服务器的物理位置位于不同区域,且第二服务器与第一服务器间的物理距离大于第三服务器与第一服务器间的物理距离。
在一些实施例中,在S607之前,方法还可以包括下述步骤。
S701:获取与目标资源地址关联存储的备份网络资源的备份更新时间信息;备份更新时间信息表征与备份网络资源对应的、存储于第二服务器的网络资源的最后被修改时间。
S703:向第二服务器发送携带有目标资源地址的时间信息查询请求。
S705:接收第二服务器发送的时间信息查询请求对应的时间查询响应信息;时间查询响应信息携带有目标网络资源的更新时间信息。
S707:在备份更新时间信息与目标网络资源的更新时间信息一致的情况下,触发向终端发送地址查询请求对应的地址查询响应信息的步骤。
S709:在备份更新时间信息与目标网络资源的更新时间信息不一致的情况下,确定备份资源地址对应的备份网络资源为过期资源。
在一些实施例中,方法还可以包括步骤S609:在识别到目标资源地址的类别特征不满足预设特征条件,未获取到关联的备份资源地址,或备份资源地址对应的备份网络资源为过期资源的情况下,向终端发送表征不存在备份资源地址的响应信息;表征不存在备份资源地址的响应信息用于触发终端向第二服务器发送资源下载请求的步骤。
在一些实施例中,方法还可以包括下述步骤。
S611:在识别到目标资源地址的类别特征满足预设特征条件,且未获取到关联的备份资源地址或备份资源地址对应的备份网络资源为过期资源的情况下,基于目标资源地址向第二服务器发送对应的资源下载请求,以从第二服务器获取目标网络资源和对应的更新时间信息。
S613:向第三服务器发送目标网络资源,以使第三服务器将目标网络资源作为对应的备份网络资源进行存储,并向第一服务器发送备份网络资源的备份资源地址。
S615:接收第三服务器发送的备份资源地址。
S617:将目标资源地址、备份资源地址和对应的更新时间信息关联存储。
本申请实施例还提供了一种网络资源下载装置700,应用于终端,如图7所示,图7示出了本申请实施例提供的一种网络资源下载装置的结构示意图,装置可以包括下述模块。
资源下载请求解析模块11:用于响应于目标应用程序发送的针对目标网络资源的资源下载请求,对资源下载请求进行解析,得到目标资源地址;目标资源地址为目标网络资源在第二服务器中的网络地址。
地址查询请求发送模块12:用于向第一服务器发送携带目标资源地址的地址查询请求。
地址查询响应接收模块13:用于接收第一服务器发送的地址查询请求对应的地址查询响应信息,地址查询响应信息携带有与目标资源地址关联存储的备份资源地址;备份资源地址是由第一服务器对目标资源地址进行类别特征识别,并在识别到目标资源地址的类别特征满足预设特征条件的情况下获取的;备份资源地址为目标网络资源对应的备份网络资源在第三服务器中的网络地址。
下载请求更新模块14:用于将资源下载请求中的目标资源地址更新为备份资源地址,得到更新的资源下载请求。
备份网络资源获取模块15:用于向第三服务器发送更新的资源下载请求,得到第三服务器发送的备份网络资源。
其中,第二服务器与第三服务器的物理位置位于不同区域,且第二服务器与第一服务器间的物理距离大于第三服务器与第一服务器间的物理距离。
在一些实施例中,装置还可以包括下述目标网络资源获取模块:用于在接收到第一服务器发送的表征不存在备份资源地址的响应信息的情况下,向第二服务器发送资源下载请求,以从第二服务器获取目标网络资源;表征不存在备份资源地址的响应信息为第一服务器在识别到目标资源地址的类别特征不满足预设特征条件,未获取到关联的备份资源地址,或备份资源地址对应的备份网络资源为过期资源的情况下生成的。
在一些实施例中,装置还可以包括下述模块。
虚拟专用网络服务启动模块:用于在对资源下载请求进行解析,得到目标资源地址之前,启动虚拟专用网络服务。
资源下载请求拦截模块:用于通过虚拟专用网络服务拦截目标应用程序发送的资源下载请求。
在一些实施例中,资源下载请求解析模块11可以包括下述单元。
网络层数据包解析单元:用于对资源下载请求的网络层数据包进行结构解析,得到资源下载请求的协议信息和传输层数据包。
传输层数据包解析单元:用于根据协议信息对传输层数据包进行解析,得到资源下载请求的请求数据。
目标资源地址获取单元:用于从请求数据的请求头中获取目标资源地址。
本申请实施例还提供了一种网络资源下载装置800,应用于第一服务器,如图8所示,图8示出了本申请实施例提供的一种网络资源下载装置的结构示意图,装置可以包括下述模块。
地址查询请求接收模块21:用于接收终端发送的携带有目标资源地址的地址查询请求;目标资源地址是终端对目标应用程序发送的针对目标网络资源的资源下载请求进行解析得到的,为目标网络资源在第二服务器中的网络地址。
类别特征识别模块22:用于对目标资源地址进行类别特征识别。
备份资源地址获取模块23:用于在识别到目标资源地址的类别特征满足预设特征条件的情况下,获取与目标资源地址关联存储的备份资源地址;备份资源地址为目标网络资源对应的备份网络资源在第三服务器中的网络地址。
备份资源地址发送模块24:用于向终端发送地址查询请求对应的地址查询响应信息,地址查询响应信息携带有与目标资源地址关联存储的备份资源地址。
其中,第二服务器与第三服务器的物理位置位于不同区域,且第二服务器与第一服务器间的物理距离大于第三服务器与第一服务器间的物理距离。
在一些实施例中,装置还可以包括下述模块。
备份更新时间信息获取模块:用于在向终端发送地址查询请求对应的地址查询响应信息之前,获取与目标资源地址关联存储的备份网络资源的备份更新时间信息;备份更新时间信息表征与备份网络资源对应的、存储于第二服务器的网络资源的最后被修改时间。
时间信息查询请求发送模块:用于向第二服务器发送携带有目标资源地址的时间信息查询请求。
时间查询响应信息接收模块:用于接收第二服务器发送的时间信息查询请求对应的时间查询响应信息;时间查询响应信息携带有目标网络资源的更新时间信息。
触发模块:用于在备份更新时间信息与目标网络资源的更新时间信息一致的情况下,触发向终端发送地址查询请求对应的地址查询响应信息的步骤。
过期资源确定模块:用于在备份更新时间信息与目标网络资源的更新时间信息不一致的情况下,确定备份资源地址对应的备份网络资源为过期资源。
在一些实施例中,装置还可以包括响应信息发送模块:用于在识别到目标资源地址的类别特征不满足预设特征条件,未获取到关联的备份资源地址,或备份资源地址对应的备份网络资源为过期资源的情况下,向终端发送表征不存在备份资源地址的响应信息;表征不存在备份资源地址的响应信息用于触发终端向第二服务器发送资源下载请求的步骤。
在一些实施例中,装置还可以包括下述模块。
更新时间信息获取模块:用于在识别到目标资源地址的类别特征满足预设特征条件,且未获取到关联的备份资源地址或备份资源地址对应的备份网络资源为过期资源的情况下,基于目标资源地址向第二服务器发送对应的资源下载请求,以从第二服务器获取目标网络资源和对应的更新时间信息。
目标网络资源发送模块:用于向第三服务器发送目标网络资源,以使第三服务器将目标网络资源作为对应的备份网络资源进行存储,并向第一服务器发送备份网络资源的备份资源地址。
备份资源地址发送模块:用于接收第三服务器发送的备份资源地址。
关联存储模块:用于将目标资源地址、备份资源地址和对应的更新时间信息关联存储。
需要说明的是,上述装置实施例与方法实施例基于相同的实施方式。
本申请实施例提供了一种网络资源下载设备,该识别设备可以为终端或服务器,该网络资源下载设备包括处理器和存储器,该存储器中存储有至少一条指令或至少一段程序,该至少一条指令或该至少一段程序由该处理器加载并执行以实现如上述方法实施例所提供的网络资源下载方法。
存储器可用于存储软件程序以及模块,处理器通过运行存储在存储器的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、功能所需的应用程序等;存储数据区可存储根据设备的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器还可以包括存储器控制器,以提供处理器对存储器的访问。
本申请实施例所提供的方法实施例可以在移动终端、计算机终端、服务器或者类似的运算装置等电子设备中执行。图9是本申请实施例提供的一种网络资源下载方法的电子设备的硬件结构框图。如图9所示,该电子设备900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以***处理器(Central Processing Units,CPU)910(处理器910可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器930,一个或一个以上存储应用程序923或数据922的存储介质920(例如一个或一个以上海量存储设备)。其中,存储器930和存储介质920可以是短暂存储或持久存储。存储在存储介质920的程序可以包括一个或一个以上模块,每个模块可以包括对电子设备中的一系列指令操作。更进一步地,中央处理器910可以设置为与存储介质920通信,在电子设备900上执行存储介质920中的一系列指令操作。电子设备900还可以包括一个或一个以上电源960,一个或一个以上有线或无线网络接口950,一个或一个以上输入输出接口940,和/或,一个或一个以上操作***921,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
输入输出接口940可以用于经由一个网络接收或者发送数据。上述的网络具体实例可包括电子设备900的通信供应商提供的无线网络。在一个实例中,输入输出接口940包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,输入输出接口940可以为射频(RadioFrequency,RF)模块,其用于通过无线方式与互联网进行通讯。
本领域普通技术人员可以理解,图9所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,电子设备900还可包括比图9中所示更多或者更少的组件,或者具有与图9所示不同的配置。
本申请的实施例还提供了一种计算机可读存储介质,存储介质可设置于电子设备之中以保存用于实现方法实施例中一种网络资源下载方法相关的至少一条指令或至少一段程序,该至少一条指令或该至少一段程序由该处理器加载并执行以实现上述方法实施例提供的网络资源下载方法。
可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络服务器中的至少一个网络服务器。可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的方法。
由上述本申请提供的网络资源下载方法、装置、设备、服务器、终端、存储介质和程序产品的实施例可见,本申请的技术方案终端响应于目标应用程序发送的针对目标网络资源的资源下载请求,对资源下载请求进行解析,得到目标资源地址;目标资源地址为目标网络资源在第二服务器中的网络地址;向第一服务器发送携带目标资源地址的地址查询请求;第一服务器对目标资源地址进行类别特征识别,在识别到目标资源地址的类别特征满足预设特征条件的情况下,获取与目标资源地址关联存储的备份资源地址;备份资源地址为目标网络资源对应的备份网络资源在第三服务器中的网络地址,并向终端发送地址查询请求对应的、携带有与目标资源地址关联存储的备份资源地址的地址查询响应信息;终端将资源下载请求中的目标资源地址更新为备份资源地址,得到更新的资源下载请求,并向第三服务器发送更新的资源下载请求,得到第三服务器发送的备份网络资源。其中,第二服务器与第三服务器的物理位置位于不同区域,且第二服务器与第一服务器间的物理距离大于第三服务器与第一服务器间的物理距离。通过将针对第二服务器发送的资源下载请求转换为针对第三服务器发送的请求,以从通信距离和链路更短的第三服务器下载备份资源,能够有效降低网络延迟,提高资源下载速度、稳定性和成功率,且节约指定互联网出口的带宽占用和成本。
需要说明的是:上述本申请实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备和存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指示相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (13)
1.一种网络资源下载方法,应用于终端,其特征在于,所述方法包括:
响应于目标应用程序发送的针对目标网络资源的资源下载请求,对所述资源下载请求进行解析,得到目标资源地址;所述目标资源地址为所述目标网络资源在第二服务器中的网络地址;
向第一服务器发送携带所述目标资源地址的地址查询请求;
接收所述第一服务器发送的所述地址查询请求对应的地址查询响应信息,所述地址查询响应信息携带有与所述目标资源地址关联存储的备份资源地址;所述备份资源地址是由所述第一服务器对所述目标资源地址进行类别特征识别,并在识别到所述目标资源地址的类别特征满足预设特征条件的情况下获取的;所述备份资源地址为所述目标网络资源对应的备份网络资源在第三服务器中的网络地址;
将所述资源下载请求中的目标资源地址更新为所述备份资源地址,得到更新的资源下载请求;
向所述第三服务器发送所述更新的资源下载请求,得到所述第三服务器发送的备份网络资源;
其中,所述第二服务器与所述第三服务器的物理位置位于不同区域,且所述第二服务器与所述第一服务器间的物理距离大于所述第三服务器与所述第一服务器间的物理距离。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在接收到所述第一服务器发送的表征不存在备份资源地址的响应信息的情况下,向所述第二服务器发送所述资源下载请求,以从所述第二服务器获取目标网络资源;所述表征不存在备份资源地址的响应信息为所述第一服务器在识别到所述目标资源地址的类别特征不满足预设特征条件,未获取到所述关联的备份资源地址,或所述备份资源地址对应的备份网络资源为过期资源的情况下生成的。
3.根据权利要求1所述的方法,其特征在于,在所述对所述资源下载请求进行解析,得到目标资源地址之前,所述方法还包括:
启动虚拟专用网络服务;
通过所述虚拟专用网络服务拦截所述目标应用程序发送的资源下载请求。
4.根据权利要求1所述的方法,其特征在于,所述对所述资源下载请求进行解析,得到目标资源地址包括:
对所述资源下载请求的网络层数据包进行结构解析,得到所述资源下载请求的协议信息和传输层数据包;
根据所述协议信息对所述传输层数据包进行解析,得到资源下载请求的请求数据;
从所述请求数据的请求头中获取所述目标资源地址。
5.一种网络资源下载方法,应用于第一服务器,其特征在于,所述方法包括:
接收终端发送的携带有目标资源地址的地址查询请求;所述目标资源地址是所述终端对目标应用程序发送的针对目标网络资源的资源下载请求进行解析得到的,为所述目标网络资源在第二服务器中的网络地址;
对所述目标资源地址进行类别特征识别;
在识别到所述目标资源地址的类别特征满足预设特征条件的情况下,获取与所述目标资源地址关联存储的备份资源地址;所述备份资源地址为所述目标网络资源对应的备份网络资源在第三服务器中的网络地址;
向所述终端发送所述地址查询请求对应的地址查询响应信息,所述地址查询响应信息携带有与所述目标资源地址关联存储的备份资源地址;
其中,所述第二服务器与所述第三服务器的物理位置位于不同区域,且所述第二服务器与所述第一服务器间的物理距离大于所述第三服务器与所述第一服务器间的物理距离。
6.根据权利要求5所述的方法,其特征在于,在向所述终端发送所述地址查询请求对应的地址查询响应信息之前,所述方法还包括:
获取与所述目标资源地址关联存储的备份网络资源的备份更新时间信息;所述备份更新时间信息表征与所述备份网络资源对应的、存储于所述第二服务器的网络资源的最后被修改时间;
向所述第二服务器发送携带有所述目标资源地址的时间信息查询请求;
接收所述第二服务器发送的所述时间信息查询请求对应的时间查询响应信息;所述时间查询响应信息携带有所述目标网络资源的更新时间信息;
在所述备份更新时间信息与所述目标网络资源的更新时间信息一致的情况下,触发所述向所述终端发送所述地址查询请求对应的地址查询响应信息的步骤;
在所述备份更新时间信息与所述目标网络资源的更新时间信息不一致的情况下,确定所述备份资源地址对应的备份网络资源为过期资源。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在识别到所述目标资源地址的类别特征不满足预设特征条件,未获取到所述关联的备份资源地址,或所述备份资源地址对应的备份网络资源为过期资源的情况下,向所述终端发送表征不存在备份资源地址的响应信息;所述表征不存在备份资源地址的响应信息用于触发所述终端向所述第二服务器发送所述资源下载请求的步骤。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在识别到所述目标资源地址的类别特征满足预设特征条件,且未获取到所述关联的备份资源地址或所述备份资源地址对应的备份网络资源为过期资源的情况下,基于所述目标资源地址向所述第二服务器发送对应的资源下载请求,以从所述第二服务器获取目标网络资源和对应的更新时间信息;
向所述第三服务器发送所述目标网络资源,以使所述第三服务器将所述目标网络资源作为对应的备份网络资源进行存储,并向所述第一服务器发送所述备份网络资源的备份资源地址;
接收所述第三服务器发送的所述备份资源地址;
将所述目标资源地址、所述备份资源地址和所述对应的更新时间信息关联存储。
9.一种网络资源下载装置,应用于终端,其特征在于,所述装置包括:
资源下载请求解析模块:用于响应于目标应用程序发送的针对目标网络资源的资源下载请求,对所述资源下载请求进行解析,得到目标资源地址;所述目标资源地址为所述目标网络资源在第二服务器中的网络地址;
地址查询请求发送模块:用于向第一服务器发送携带所述目标资源地址的地址查询请求;
地址查询响应接收模块:用于接收所述第一服务器发送的所述地址查询请求对应的地址查询响应信息,所述地址查询响应信息携带有与所述目标资源地址关联存储的备份资源地址;所述备份资源地址是由所述第一服务器对所述目标资源地址进行类别特征识别,并在识别到所述目标资源地址的类别特征满足预设特征条件的情况下获取的;所述备份资源地址为所述目标网络资源对应的备份网络资源在第三服务器中的网络地址;
下载请求更新模块:用于将所述资源下载请求中的目标资源地址更新为所述备份资源地址,得到更新的资源下载请求;
备份网络资源获取模块:用于向所述第三服务器发送所述更新的资源下载请求,得到所述第三服务器发送的备份网络资源;
其中,所述第二服务器与所述第三服务器的物理位置位于不同区域,且所述第二服务器与所述第一服务器间的物理距离大于所述第三服务器与所述第一服务器间的物理距离。
10.一种网络资源下载装置,应用于第一服务器,其特征在于,所述装置包括:
地址查询请求接收模块:用于接收终端发送的携带有目标资源地址的地址查询请求;所述目标资源地址是所述终端对目标应用程序发送的针对目标网络资源的资源下载请求进行解析得到的,为所述目标网络资源在第二服务器中的网络地址;
类别特征识别模块:用于对所述目标资源地址进行类别特征识别;
备份资源地址获取模块:用于在识别到所述目标资源地址的类别特征满足预设特征条件的情况下,获取与所述目标资源地址关联存储的备份资源地址;所述备份资源地址为所述目标网络资源对应的备份网络资源在第三服务器中的网络地址;
备份资源地址发送模块:用于向所述终端发送所述地址查询请求对应的地址查询响应信息,所述地址查询响应信息携带有与所述目标资源地址关联存储的备份资源地址;
其中,所述第二服务器与所述第三服务器的物理位置位于不同区域,且所述第二服务器与所述第一服务器间的物理距离大于所述第三服务器与所述第一服务器间的物理距离。
11.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现如权利要求1-8中任一项所述的网络资源下载方法。
12.一种计算机设备,其特征在于,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如权利要求1-8中任一项所述的网络资源下载方法。
13.一种计算机程序,其特征在于,所述计算机程序包括计算机指令,所述计算机指令被处理器执行时实现如权利要求1-8中任一项所述的网络资源下载方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210015374.5A CN116455885A (zh) | 2022-01-07 | 2022-01-07 | 网络资源下载方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210015374.5A CN116455885A (zh) | 2022-01-07 | 2022-01-07 | 网络资源下载方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116455885A true CN116455885A (zh) | 2023-07-18 |
Family
ID=87128930
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210015374.5A Pending CN116455885A (zh) | 2022-01-07 | 2022-01-07 | 网络资源下载方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116455885A (zh) |
-
2022
- 2022-01-07 CN CN202210015374.5A patent/CN116455885A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3798833B1 (en) | Methods, system, articles of manufacture, and apparatus to manage telemetry data in an edge environment | |
CN102307210B (zh) | 一种数据下载***及其数据管理和下载方法 | |
US7133933B2 (en) | Content synchronization frameworks using dynamic attributes and file bundles for connected devices | |
RU2689439C2 (ru) | Улучшение производительности веб-доступа | |
CN109639782B (zh) | 消息发送平台、方法 | |
CN112261172B (zh) | 服务寻址访问方法、装置、***、设备及介质 | |
JP5605229B2 (ja) | アプリケーションサーバ管理システム、アプリケーションサーバ管理方法、管理装置、アプリケーションサーバ、および、コンピュータ・プログラム | |
CN111274268A (zh) | 物联网数据传输方法、装置、介质及电子设备 | |
WO2021051747A1 (zh) | 数据更新方法、***、装置、电子设备及计算机存储介质 | |
US20150188999A1 (en) | System and method to extend the capabilities of a web browser to improve the web application performance | |
CN113992738A (zh) | 基于微服务网关的反向代理方法、装置、设备及存储介质 | |
CN108287894A (zh) | 数据处理方法、装置、计算设备及存储介质 | |
CN112929411A (zh) | 一种分布式文件传输方法、服务器及私有云设备 | |
CN101325611A (zh) | 一种点对点下载的方法及装置 | |
CN112804223A (zh) | 一种报文处理方法和装置 | |
CN114650281A (zh) | 基于复杂网络的文件下载方法、装置、设备及存储介质 | |
CN106101183A (zh) | 回源请求的中转方法和装置及回源*** | |
EP3579526B1 (en) | Resource file feedback method and apparatus | |
JP5109901B2 (ja) | セッションデータ共有方法 | |
CN110895583B (zh) | 数据资源获取的方法、装置和*** | |
CN116455885A (zh) | 网络资源下载方法、装置、设备和存储介质 | |
CN111541758A (zh) | 页面更新方法及装置 | |
CN106936643B (zh) | 一种设备联动方法以及终端设备 | |
CN114827239A (zh) | 基于8583协议的双向会话保持方法和装置 | |
US20210157769A1 (en) | Distributed storage system for storing context data |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40089852 Country of ref document: HK |