HTTP内容分发——《HTTP威望指南》系列

WilsonLiu’s blog 首发地点

内容分发

Web主机托管

对内容资本的存储谐和以及治理的职责统称为Web主机托管。

假造服务器请求却反主机信息

HTTP/1.0中的一个设想瑕玷会使假造主机托管者猖獗。HTTP/1.0中没有为同享的Web服务器供应任何要领来辨认要接见的是所托管的哪一个假造网站。
HTTP/1.0请求在报文中只发送URL的途径部份,假如要接见http://www.baidu.com/index.html,浏览器会连接到服务器http://www.baidu.com,但HTTP/1.0请求中却只提到GET /index.html,没有提到主机名。假如服务器假造托管了许多个站点,就没有充足的信息能指出要接见的是哪一个假造主机网站。 而且HTTP反向代办和阻拦代办也都须要明白的站点信息。

因而HTTP/1.1确实请求服务器能够处置惩罚HTTP报文请求行上的完全URL,但将现存的应用顺序都晋级都这个范例还须要时刻,在此期间,涌现出了以下4种手艺。

  1. 经由过程URL途径举行假造主机托管 —— 在URL中增加特地的途径部份,以便服务器推断是哪一个网站

  2. 经由过程端口号举行主机托管 —— 为每一个站点分派差别的端口号,如许请求就由web服务器的零丁实例来处置惩罚

  3. 经由过程IP地点举行主机托管 —— 为差别的假造站点分派特地的IP地点

  4. 经由过程Host首部举行主机托管

镜像的服务器集群

服务器集群是一排设置雷同的Web服务器,相互能够替代。每一个服务器上的内容能够经由过程镜像复制,如许当某个服务器出题目标时刻,其他的能够顶上。
镜像的服务器经常构成条理化的关联。某个服务器能够充任“内容威望”——它含有原始内容(能够就是内容作者上传的谁人服务器)。这个服务器称为主原始服务器(master origin server)。从主原始服务器吸收内容的镜像服务器称为复制原始服务器(replica origin server)。一种简朴的布置服务器集群的要领是用收集交换机把请求分发给服务器。托管在服务器上的每一个网站的IP地点就设置为交换机的IP地点。

镜像Web服务器能够在差别的地点包括一样内容的副本。能够有以下两种要领把客户端的请求导向特定的服务器。

  1. HTTP重定向 —— 该内容的URL会剖析到主服务器的IP地点,然后它会发作重定向到复制服务器

  2. DNS重定向 —— 该内容的URL会剖析到4个IP地点,DNS服务器能够挑选发送给客户端的IP地点

内容分发收集 CDN

简朴地说,内容分发收集就是对特定内容举行分发的特地收集。这个收集中的节点能够是Web服务器,反向代办或缓存。

反向代办

反向代办缓存能够像镜像服务器一样吸收服务器请求,它们代表原始服务器中的一个特定鸠合来吸收服务器请求。(依据内容地点的IP地点的广告体式格局,这是有能够的,原始服务器和反向代办缓存之间一般有协作关联,到特定的原始服务器的请求就由反向代办缓存来吸收。)

CDN中的代办缓存

与反向代办差别,传统的代办缓存能够收到发往任何Web服务器的请求(在代办缓存与原始服务器之间不须要有任何事情关联或IP地点商定)。

重定向和负载均衡

由于HTTP应用顺序老是要做以下3件事变,所以在当代收集中重定向是普遍存在的:

  • 可靠地实行HTTP事件

  • 最小化时延

  • 勤俭收集带宽
    出于这些缘由,web内容一般散布在许多处所。这么做是出于可靠性的斟酌。如许假如一个位置涌现了题目,另有其他的可用;假如客户端能够接见较量的资本,就可用更快的收到所请求的内容,以下降响应时刻;将目标服务器疏散,还能够削减收集堵塞。可用将重定向当作一组有助于找到”最好”散布式内容的手艺。

而重定向和负载均衡老是共存的。

重定向要领

通用的重定向要领

  • HTTP重定向

  • DNS重定向

  • 任播寻址

  • IP MAC转发

  • IP地点转发

代办与缓存重定向手艺

  • 显现浏览器设置

  • 代办自动设置(PAC)

  • Web Proxy代办自动发明协定(WPAD)

  • Web缓存谐和协定(WCCP)

  • 因特网缓存协定(ICP)

  • 缓存分组路由协定(CARP)

  • 超文本缓存协定(HTCP)

通用的重定向要领

HTTP重定向

与其他情势的重定向比拟,HTTP重定向的长处之一就是重定向服务器晓得客户端IP地点,理论上来说,它能够做出更合理的挑选。

HTTP重定向能够在服务器间指导请求,但有以下几个瑕玷。

  • 须要原始服务器举行大批处置惩罚来推断要重定向到哪台服务器上去。偶然,宣布重定向所需的处置惩罚量险些与进步页面自身所需的处置惩罚量一样。

  • 增加了用户时延,由于接见页面时要举行两次往复。

  • 假如重定向服务器出毛病,站点就会瘫痪。

DNS重定向

DNS许可将几个IP地点关联到一个域中,能够设置DNS剖析顺序,或对其举行编程,以返回可变的IP地点。剖析顺序返回IP地点时,所基于的准绳能够很简朴(轮转),也能够很庞杂(比方检察几台服务器上的负载均衡,并返回负载最轻的服务器的IP地点)。

DNS缓存带来的影响

DNS对服务器的每次查询都邑获得差别的服务器地点序列,所以DNS地点轮转会将负载分摊。然则这类负载均衡也并不圆满,由于DNS查找效果能够会被客户端记着并被重复重用,以削减DNS查找的开支,而且有些服务器也情愿坚持与一台客户端的联络。

其他基于DNS的重定向算法

  • 负载均衡算法

  • 毗邻路由算法

  • 毛病屏障算法

任播寻址

在任播寻址中,几个地理上疏散的Web服务器具有完全雷同的IP地点,而且会经由过程主干路由器的”最短途径”路由功能将客户端的请求发送给离它近来的服务器。要使这类要领事情,每一个路由器都要想相近的主干路由器广告,表明本身是一台路由器。

IP MAC转发

支撑MAC转发的第四次交换机一般会将请求转发给几个代办缓存,并在它们之间均衡负载,由于MAC地点转发是点对点的,所以服务器或代办只能位于离交换机一跳远的处所。

IP地点转发

在IP地点转发中,交换机或其他第四层装备会检测输入分组中的TCP/IP地点,并经由过程修正目标IP地点(不是目标MAC地点),对分组举行响应的转发。

代办的重定向要领

  • 显式设置浏览器设置

  • 代办自动设置 PAC

  • Web代办自动发明协定 WPAD

    原文作者:WilsonLiu95
    原文地址: https://segmentfault.com/a/1190000006786024
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞