首页 / 专利库 / 专利权 / 申请 / 国际申请 / 修改 / 一种对网站动态资源和静态资源分离加速的方法及装置

一种对网站动态资源和静态资源分离加速的方法及装置

阅读:920发布:2023-03-14

专利汇可以提供一种对网站动态资源和静态资源分离加速的方法及装置专利检索,专利查询,专利分析的服务。并且本 发明 提供一种对 网站 动态资源和静态资源分离 加速 的方法及装置,属于互联网技术领域。所述方法包括:接收到浏览器的页面 请求 时,获取所述页面请求对应的页面文件;获取浏览器所在客户端的IP地址,根据所述IP地址确定客户端 位置 ;根据客户端位置获取离客户端最近的静态 节点 ;将浏览器请求的页面文件中静态资源的url 修改 为指向离客户端最近的静态节点,并将修改后的页面文件返回给所述浏览器。根据本发明,不需要对源站进行修改即可以做到网页中的动静态资源分离,从而提高网页浏览的速度。,下面是一种对网站动态资源和静态资源分离加速的方法及装置专利的具体信息内容。

1.一种对网站动态资源和静态资源分离加速的方法,应用于web代理服务器集群的动态节点中,所述web代理服务器集群中还包括多个静态节点,其特征在于,所述方法包括:
接收到浏览器的页面请求时,获取所述页面请求对应的页面文件;
获取浏览器所在客户端的IP地址,根据所述IP地址确定客户端位置
根据客户端位置获取离客户端最近的静态节点;
将浏览器请求的页面文件中静态资源的url修改为指向离客户端最近的静态节点,并将修改后的页面文件返回给所述浏览器。
2.如权利要求1所述的方法,其特征在于,还包括:
对修改后的url进行编码。
3.如权利要求1所述的方法,其特征在于,所述获取浏览器所在客户端的IP地址为:
从浏览器所在客户端与本动态节点之间的TCP连接中获取客户端的IP地址。
4.如权利要求1所述的方法,其特征在于,所述获取离客户端最近的静态节点为:
获取与客户端属于同一网络运营商的多个静态节点中,离客户端最近的静态节点。
5.一种对网站动态资源和静态资源分离加速的装置,应用于web代理服务器集群的动态节点中,所述web代理服务器集群中还包括多个静态节点,其特征在于,所述装置包括:
页面获取单元,用于接收到浏览器的页面请求时,获取所述页面请求对应的页面文件;
位置判断单元,用于获取浏览器所在客户端的IP地址,根据所述IP地址确定客户端位置;
静态节点获取单元,用于根据客户端位置获取离客户端最近的静态节点;
页面修改单元,用于将浏览器请求的页面文件中静态资源的url修改为指向离客户端最近的静态节点,并将修改后的页面文件返回给所述浏览器。
6.如权利要求5所述的装置,其特征在于,所述页面修改单元进一步用于:
对修改后的url进行编码。
7.如权利要求5所述的装置,其特征在于,所述获取浏览器所在客户端的IP地址为:
从浏览器所在客户端与本动态节点之间的TCP连接中获取客户端的IP地址。
8.如权利要求5所述的装置,其特征在于,所述获取离客户端最近的静态节点为:
获取与客户端属于同一网络运营商的多个静态节点中,离客户端最近的静态节点。

说明书全文

一种对网站动态资源和静态资源分离加速的方法及装置

技术领域

[0001] 本发明涉及互联网领域,特别涉及一种对网站动态资源和静态资源分离加速的方法及装置。

背景技术

[0002] 一般网站通过设置不同的域名来分离动态资源(如html,php、asp生成页面)和静态资源(如图片、js文件、css文件等),达到分散用户浏览请求的目的,从而提高网页浏览的速度。
[0003] 但是,启用动态域名和静态域名增加了源站的部署难度,并且需要对页面源码进行修改。如果网站目前是使用一个域名,希望实现动静分离,则代码改动量非常大。 发明内容
[0004] 有鉴于此,本发明的目的是提供一种对网站动态资源和静态资源分离加速的方法及装置,不需要对源站进行修改即可以做到网页中的动静态资源分离,从而提高网页浏览的速度。
[0005] 为实现上述目的,本发明提供技术方案如下:
[0006] 一种对网站动态资源和静态资源分离加速的方法,应用于web代理服务器集群的动态节点中,所述web代理服务器集群中还包括多个静态节点,所述方法包括: [0007] 接收到浏览器的页面请求时,获取所述页面请求对应的页面文件; [0008] 获取浏览器所在客户端的IP地址,根据所述IP地址确定客户端位置; [0009] 根据客户端位置获取离客户端最近的静态节点;
[0010] 将浏览器请求的页面文件中静态资源的url修改为指向离客户端最近的静态节点,并将修改后的页面文件返回给所述浏览器。
[0011] 上述的方法,其中,还包括:对修改后的url进行编码。
[0012] 上述的方法,其中,所述获取浏览器所在客户端的IP地址为:从浏览器所在客户端与本动态节点之间的TCP连接中获取客户端的IP地址。
[0013] 上述的方法,其中,所述获取离客户端最近的静态节点为:获取与客户端属于同一网络运营商的多个静态节点中,离客户端最近的静态节点。
[0014] 一种对网站动态资源和静态资源分离加速的装置,应用于web代理服务器集群的动态节点中,所述web代理服务器集群中还包括多个静态节点,所述装置包括: [0015] 页面获取单元,用于接收到浏览器的页面请求时,获取所述页面请求对应的页面文件;
[0016] 位置判断单元,用于获取浏览器所在客户端的IP地址,根据所述IP地址确定客户端位置;
[0017] 静态节点获取单元,用于根据客户端位置获取离客户端最近的静态节点; [0018] 页面修改单元,用于将浏览器请求的页面文件中静态资源的url修改为指向离客户端最近的静态节点,并将修改后的页面文件返回给所述浏览器。
[0019] 上述的装置,其中,所述页面修改单元进一步用于:对修改后的url进行编码。 [0020] 上述的装置,其中,所述获取浏览器所在客户端的IP地址为:从浏览器所在客户端与本动态节点之间的TCP连接中获取客户端的IP地址。
[0021] 上述的装置,其中,所述获取离客户端最近的静态节点为:获取与客户端属于同一网络运营商的多个静态节点中,离客户端最近的静态节点。
[0022] 与现有技术通过为网站启用动态域名和静态域名来实现动态资源和静态资源的分离相比,本发明通过web代理服务器集群实现对web源站的动静分离,能够达到如下的有益效果:
[0023] 不需要对源站进行修改即可以做到网页中的动静态资源分离; [0024] Web源站只是用一个域名即可做到动静分离;
[0025] 通过静态节点缓存可以对源站静态资源加速。附图说明
[0026] 图1是根据本发明一个实施例的对网站动态资源和静态资源分离加速的系统结构图;
[0027] 图2是根据本发明一个实施例的对网站动态资源和静态资源分离加速的装置结构图;
[0028] 图3是根据本发明一个实施例的对网站动态资源和静态资源分离加速的方法流程图

具体实施方式

[0029] 以下结合附图对本发明实施例进行详细描述。
[0030] 为提高网页浏览速度,本发明实施例通过web代理服务器集群实现对web源站中动态资源和静态资源的分离,源站不需要进行修改就可以做到动静分离,且源站只需要一个域名即可。浏览器获取页面的过程,首先通过分配给客户端浏览器的动态节点获取html页面,html页面中的静态资源url会被修改,浏览器请求静态资源的时候会被分配到最近的静态节点获取。
[0031] 图1是根据本发明一个实施例的对网站动态资源和静态资源分离加速的系统结构图。参照图1,所述系统可以包括:客户端10、web代理服务器集群20、web服务器30、本地DNS40和调度DNS50。所述web代理服务器集群20中包括多个web代理网关,在本发明实施例中,还进一步将web代理网关划分为两种类型,提供动态资源服务的web代理网关称为动态节点,提供静态资源服务的web代理网关称为静态节点,图中仅示出了1个动态节点和2个静态节点,分别为:动态节点21,静态节点22和静态节点23。一般而言,动态节点由于要防止攻击,其带宽较大,静态节点主要做缓存用,其 带宽较小,即动态节点的带宽大于静态节点的带宽。其中,动态节点和静态节点的位置以及数量可以根据实际需求进行部署和选择。web代理网关位于客户端10和web服务器30之间,一个web代理网关可以连接一个或多个web服务器30。
[0032] 其中,客户端10中安装有用户浏览器11,浏览器是指可以显示网页服务器或者文件系统的HTML文件内容,并让用户与这些文件交互的一种软件,可以是IE、firefox、chrome等浏览器。网页浏览器主要通过HTTP协议与web服务器交互并获取网页,这些网页由统一资源定位符(URL)指定,文件格式通常为HTML,并由MIME在HTTP协议中指明。客户端10可以是有线或无线通信装置,例如,计算机,移动电话个人数字助理(PDA)等。web服务器30上存储有一个或多个网页。
[0033] Web代理网关(动态节点或静态节点)是一种反向代理,浏览器11可以通过web代理网关获取web服务器30中的网页。具体地,可以将web服务器30的域名的权威DNS设置为所述调度DNS50,当客户端浏览器11要访问这个网站的时候,首先到设置的本地DNS服务器40上获取这个网站的IP地址,本地DNS服务器40最终会到调度DNS服务器50上查询IP地址,调度DNS服务器50会根据本地DNS40的位置,返回一个离该位置最近的动态节点的IP地址,例如,返回的是动态节点21的IP地址,于是,客户端浏览器11对web服务器30的页面请求(例如http请求)会首先到达动态节点21,由动态节点21对浏览器11的页面请求进行响应。由于本地DNS设置不正确等原因可能客户端并不在此位置,这个问题可以由后面的动态节点进行修正。
[0034] 按照现有技术的实现方式,动态节点21接收到浏览器11的页面请求后,会从本地缓存或者web服务器30中获取对应的页面文件(html文件),并将获取到的页面文件返回给浏览器11。
[0035] 与现有技术的一个不同在于,在本发明实施例中,动态节点21接收到浏览器11的页面请求,并从本地缓存或者web服务器30中获取对应的页面文 件后,不是直接将获取到的页面文件返回给浏览器11,而是进一步根据客户端10与本动态节点21之间的TCP连接,获取客户端10的IP地址,根据获取到的IP地址确定客户端10的地理位置,并根据所述地理位置获取离客户端10最近的静态节点,假设为静态节点22,并将浏览器请求的页面文件中静态资源的url修改为指向静态节点22,然后,将修改后的页面文件返回给所述浏览器11。这样,浏览器11后续对页面文件中静态资源(例如图片、页面脚本文件、样式表文件等)的请求会到达静态节点22,由静态节点22获取到请求的资源后返回给浏览器11。可见,根据本发明的实施例,浏览器对网页中静态资源的请求会到达离自己最近的静态节点22,而对动态资源的请求仍然会到达动态节点21,因此,在不需要对源站(web服务器30)进行修改的前提下,实现了源站中静态资源和动态资源的分离。
[0036] 需要说明如果静态资源因为某些原因没有被修改成功,则此静态资源还会回到动态节点获取,因此动态节点也需要有缓存静态资源的能
[0037] 以下给出web代理网关的具体实现。
[0038] 图2是根据本发明一个实施例的对网站动态资源和静态资源分离加速的装置结构图,应用于web代理服务器集群的动态节点中,所述web代理服务器集群中还包括多个静态节点,所述装置可以包括:页面获取单元201、位置判断单元202、静态节点获取单元203和页面修改单元204。
[0039] 该装置的工作原理为:
[0040] 页面获取单元201接收到浏览器的页面请求(http请求)时,会获取所述页面请求对应的页面文件(html文件)。页面文件获取单元201在接收到浏览器的页面请求时,可以先判断缓存中是否存在该页面请求对应的页面文件,若是,从缓存中获取所述页面文件;否则,从源网站(web服务器30)获取所述页面文件,并将获取到的页面文件添加到缓存中(如果是可以缓存的页面文件)。
[0041] 位置判断单元202获取浏览器11所在客户端10的IP地址,根据所述IP地址确定客户端10的位置。其中,位置判断单元202可以从浏览器所在客户 端10与本动态节点之间的TCP连接中获取客户端的IP地址,根据该IP地址所属的地址段可以确定客户端10的物理位置。
[0042] 静态节点获取单元203根据客户端位置获取离客户端最近的静态节点。其中,代理网关获取单元203可以从所有静态节点中获取一个最近的静态节点;为避免产生跨网访问问题,代理网关获取单元203也可以从与客户端属于同一网络运营商的多个静态节点中,获取离客户端最近的静态节点。
[0043] 之后,页面修改单元204将浏览器请求的页面文件中静态资源的url修改为指向离客户端最近的静态节点,并将修改后的页面文件返回给所述浏览器。其中,在将修改后的页面文件返回给所述浏览器之前,页面修改单元204还可以对修改后的url进行编码。 [0044] 浏览器对修改后的页面文件进行解析后,会发起对页面文件中静态资源(例如图片、页面脚本文件、样式表文件等)的http请求,这样,浏览器对静态资源的请求会到达静态节点,由静态节点获取到请求的资源后返回给浏览器,从而实现了动静分离。如果静态资源的url进行过编码,则静态节点还需要对其进行反编码。
[0045] 图3是根据本发明一个实施例的对网站动态资源和静态资源分离加速的方法流程图,应用于web代理服务器集群的动态节点中,所述web代理服务器集群中还包括多个静态节点(图3中的各步骤均由动态节点执行)。
[0046] 参照图3,所述方法可以包括如下步骤:
[0047] 步骤301,接收到浏览器的页面请求时,获取所述页面请求对应的页面文件; [0048] 在接收到浏览器的页面请求时,可以先判断缓存中是否存在该页面请求对应的页面文件,若是,从缓存中获取所述页面文件;否则,从源网站(web服务器30)获取所述页面文件,并将获取到的页面文件添加到缓存中(如果该页面文件是适于缓存的)。后续再接收到对该页面文件的请求时,就可以直接从缓存中获取到该页面文件。
[0049] 步骤302,获取浏览器所在客户端的IP地址,根据所述IP地址确定客 户端位置; [0050] 可以从浏览器所在客户端与本动态节点之间的TCP连接中获取客户端的IP地址。根据该IP地址所属的地址段可以确定客户端的物理位置。
[0051] 步骤303,根据客户端位置获取离客户端最近的静态节点;
[0052] 其中,可以从所有静态节点中获取一个最近的静态节点;也可以从与客户端属于同一网络运营商的多个静态节点中,获取离客户端最近的静态节点,即客户端与静态节点属于同一线路,这样能够避免产生跨网访问问题,从而能够进一步提高网页浏览速度。 [0053] 步骤304,将浏览器请求的页面文件中静态资源的url修改为指向离客户端最近的静态节点,并将修改后的页面文件返回给所述浏览器。
[0054] 在本步骤中,还可以对修改后的url进行编码,这样能够向用户隐藏一些信息,从而能够提高用户体验。
[0055] 根据本发明实施例的方法,动态节点在将html内容返回给浏览器之前会修改其中静态缓存资源的地址(可以修改为IP地址,减少DNS查询),使浏览器再获取静态资源的时候从静态节点获取。根据客户端真实地址位置,动态节点会选择离客户端最近的静态节点,大多数情况下缓存资源已经在此静态节点缓存,静态节点直接返回给客户端即可;在一个资源从没有被访问过的情况下,静态节点会回源获取数据,同时将此资源同步到此站其他静态节点,这样只需访问源站一次就可以使所有静态节点刷新和缓存此资源。 [0056] 本发明的一个应用实例如下:
[0057] 1、浏览器请求www.abc.com的首页,源站返回的页面中有两个静态资源; [0058] 浏览器的http请求为:
[0059] GET/HTTP/1.1
[0060] Host:www.abc.com
[0061] 源站页面为:
[0062]
[0063]
[0064] 该页面文件中包括两个静态资源,分别为js脚本:src=″/js/head.js″,图片:src=″pic.jpg″。
[0065] 2、动态节点对页面中的静态资源连接进行修改,根据客户端的ip地址可以获取到客户端的位置,分配一个离客户端最近的静态节点;
[0066] 3、静态资源的url链接将被编码;
[0067] url修改和编码后的页面文件文件如下:
[0068]
[0069] 4、浏览器收到修改后的html页面之后,会发起对这个静态节点的请求,请求这两个静态资源);
[0070] 两个http请求如下:
[0071] GET/j5is4nt8s2uisl6nscn2.js HTTP/1.1
[0072] Host:static.aqb.com
[0073] GET/pondfk682mcuymskf.jpg HTTP/1.1
[0074] Host:static.aqb.com
[0075] 5、静态节点接收到请求之后会对url进行反编码,获取到真正的服务器域名和url,如果这个资源已经被缓存则直接返回给浏览器,否则回到源站获取此静态资源。 [0076] 反编码后的两个http请求如下:
[0077] GET/js/html5.js HTTP/1.1
[0078] Host:www.abc.com
[0079] GET/pic.jpg HTTP/1.1
[0080] Host:www.abc.com
[0081] 可见,根据本发明,浏览器11会从动态节点21接收到修改后的页面文件,对该页面文件进行解析后,会从离自己最近的静态节点22获取页面文件中的js脚本资源和图片资源,从而不需要对源站进行修改,就实现了动静分离。
[0082] 需要说明的是,在附图的流程图示出的步骤可以在诸如设置有一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。另外,本领域的技术人员应该明白,上述的本发明的各模或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软 件结合。
[0083] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
相关专利内容
标题 发布/更新时间 阅读量
可见性信息修改 2020-05-12 826
声学信号修改 2020-05-12 288
修改分析流 2020-05-11 583
业务流修改流程 2020-05-13 12
修改比特流 2020-05-12 91
一种面型修改油 2020-05-13 128
修改带 2020-05-11 618
修改液笔 2020-05-11 1041
路线修改 2020-05-11 79
错字修改笔 2020-05-12 603
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈