Web加速方法和系统的制作方法_2

文档序号:8433853阅读:来源:国知局
r>[0044]⑶N控制服务器,用于当DNS解析服务器将选择出的⑶N节点作为当前⑶N节点后,按预定的时间间隔对当前CDN节点进行性能检测;若检测到当前CDN节点的服务质量低于预定的门限值时,在CDN节点集合中重新选择距离用户终端最近的CDN节点;在重新选择的CDN节点与用户终端之间、以及重新选择的CDN节点与当前LVS服务器之间建立链接;切断当前CDN节点与用户终端之间、以及当前CDN节点与当前LVS服务器之间的链接;将重新选择的CDN节点作为当前CDN节点。
[0045]本发明通过为用户终端分配可访问的最优⑶N节点,代理服务器采用Nginx技术,缓存服务器采用Varnish技术,回源策略采用NAT机制,从而为Web的网络链路层服务质量提供保证,有效解决了 Web加速问题。
【附图说明】
[0046]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0047]图1为本发明Web加速方法一个实施例的示意图。
[0048]图2为本发明Web加速方法另一实施例的示意图。
[0049]图3为本发明Web加速系统一个实施例的示意图。
[0050]图4为本发明Web加速系统另一实施例的示意图。
【具体实施方式】
[0051]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0052]除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
[0053]同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
[0054]对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
[0055]在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
[0056]应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
[0057]图1为本发明Web加速方法一个实施例的示意图。如图1所示,本实施例的方法步骤如下:
[0058]步骤101,当DNS解析服务器接收到用户终端发送的Web请求时,对Web请求进行解析,以便从CDN节点集合中选择出距离用户终端最近的CDN节点,将选择出的CDN节点作为当前⑶N节点。
[0059]在一个实施例中,在系统中部署了多个CDN节点,在每一个CDN节点中部署了多个LVS (Linux Virtual Server,Linux虚拟服务器)服务器,从而保证了当用户访问Web站点的时候可以获得同一条线路中最近⑶N节点的IP地址。
[0060]步骤102,选择与当前CDN节点相关联的一个LVS服务器,将选择出的LVS服务器作为当前LVS服务器。
[0061]当一个用户向DNS服务器发起请求时,它将获得Web站点的主站IP地址,此时DNS服务器将首先开启DNS智能解析服务,将解析出距离用户所在网络节点最近的CDN节点。找到最佳的CDN节点之后,DNS服务器开始查找该CDN节点内部的LVS服务器,采用某种策略(随机或者轮询)的方式为该用户提供其中的一个LVS服务器。通过如上的步骤,就保证了用户可以获取到最佳的CDN节点的同时,可以保证系统可以有效的利用多个LVS完成负载均衡的功能,以防止单个CDN节点出现单点拥塞的情况。
[0062]在完成智能解析和负载均衡的功能之上,还要保证在收到恶意网络攻击的情况下DNS的安全性。本发明将一个LVS下的DNS分为若干个组,在每组内部由多台DNS服务器组成。在LVS进行域名解析的时候,首先将根据其自身定义的域名解析记录来指定该域名由哪个组的那个台DNS服务器来进行真正的解析工作。
[0063]步骤103,将Web请求通过当前⑶N节点发送给当前LVS服务器。
[0064]步骤104,当前LVS服务器将Web请求发送给Nginx服务器。
[0065]在一个实施例中,在当前LVS服务器接收到Web请求时,当前LVS服务器判断与Web请求对应的Web服务器是否处于正常工作状态。若与Web请求对应的Web服务器处于正常工作状态,则执行当前LVS服务器将Web请求发送给Nginx服务器的步骤;若与Web请求对应的Web服务器处于异常工作状态,则拒绝Web请求。
[0066]S卩,在确认Web服务器处于正常工作状态时,才继续进行后续处理。
[0067]步骤105,Nginx服务器根据Web请求判断目标页面是否为静态页面。若目标页面为静态页面,则执行步骤106 ;若目标页面为动态页面,则执行步骤107。
[0068]步骤106,从Varnish服务器中进行相应页面的抓取。之后,不再执行本实施例的其它步骤。
[0069]在本发明中,在系统架构的前端部署LVS服务器,其后部署Nginx服务器集群和部署Varnish服务器集群。当前前端的请求到来时,首先通过LVS服务器进行Web服务器的状态监测,之后将请求转发至Nginx服务器集群完成负载均衡的处理。Nginx将接收到的请求根据动态和静态属性进行区分类别的处理。如果请求的是动态页面,则Nginx会将请求转发至回源层进行页面抓取。如果请求的是静态页面,则Nginx直接将处理后的数据包转发至Varnish服务器集群,利用Varnish的高速缓存性能,快速的完成Nginx请求的响应。
[0070]在一个实施例中,上述从Varnish服务器中进行相应页面的抓取的步骤包括:
[0071]若目标页面为静态页面,则进一步判断Varnish服务器中是否具有相应的Web页面。若Varnish服务器中具有相应的目标页面,则从Varnish服务器中进行相应页面的抓取。若Varnish服务器中没有相应的目标页面,则执行将Web请求发送给回源服务器的步骤。
[0072]即,若Nginx没有在Varnish内找到对应的缓存信息,则将请求回源层进行页面抓取。
[0073]步骤107,将Web请求发送给回源服务器。
[0074]步骤108,回源服务器在接收到Web请求后,判断用户终端使用的线路是否与Web请求对应的Web服务器所属运营商的线路相同。若用户终端使用的线路与Web请求对应的Web服务器所属运营商的线路相同,则执行步骤109 ;否则,执行步骤110。
[0075]步骤109,回源服务器直接将Web请求发送给所述Web服务器,以便从所述Web服务器进行页面抓取。之后,不再执行本实施例的其它步骤。
[0076]步骤110,回源服务器对Web请求进行NAT转换,以便利用与所述Web服务器所属运营商的线路将Web请求发送给所述Web服务器,从所述Web服务器进行页面抓取。
[0077]回源服务器的功能主要是在多条不同的线路中进行内部网络的转换。从用户的视角看,对不同线路发起的Web请求将和对同一线路发起的Web请求将获得相同的速度。从Web站点的视角看,单线传输转变为了多线传输。
[0078]如果用户的请求线路和Web站点的线路相同,则可以之间将该请求发送至Web
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1