Web的结构组件
一、代理
定义:位于客户端和服务器之间的HTTP中间实体。
特点:是Web安全、应用集成以及性能优化的重要组成模块。
如图所示,代理位于客户端与服务器之间,接收所有客户端的HTTP请求,并将这些请求转发给服务器(可能会对请求进行修改之后转发)。出于安全考虑,通常会将代理作为转发Web流量的可信任中间节点使用。
应用场景:对请求和响应进行过滤。例如:在企业中对下载的应用程序进行病毒检测,或者对小学生屏蔽一些成人才能看的内容(噢尼陀佛,施主回头是岸)。
二、缓存
定义:HTTP仓库,使常用页面的副本可以保存在离客户端更近的地方。
特点:客户端从附近的缓存下载文档会比从远程Web服务器下载快得多。
Web缓存或代理缓存是一种特殊的HTTP代理服务器,可以将经过代理传送的常用文档复制保存起来。
三、网关
定义:连接其他应用程序的特殊Web服务器。
特点:网关接受请求时就好像自己是资源的源端服务器,客户端可能不知道自己正在与 一个网关进行通信。
应用场景(作用):用于将HTTP流量转换成其他的协议。
网关是一种特殊的服务器,作为其他服务器的中间实体来使用。通常用于将HTTP流量转换成其他的协议。例如:一个HTTP/FTP网关会通过HTTP请求接收对FTP URI的请求,但通过将HTTP请求转换成FTP协议来从服务器获取文档。得到的文档会在HTTP/FTP网关这里封装成一条HTTP报文,发送给客户端。
四、隧道
定义:对HTTP通信报文(原始数据)进行盲转发的HTTP应用程序。
特点:HTTP隧道通常用来在一条或多条HTTP连接上转发非HTTP数据,转发时不会窥探数据(这就是“盲”字的解释)。
应用场景:HTTP隧道的一种常见用途是通过HTTP连接承载加密的安全套接字层(SSL)流量,这样SSL流量就可以穿过只允许Web流量通过的防火墙了。
如图,HTTP/SSL隧道收到一条HTTP请求,要求建立一条道目的地址和端口的输出连接,通过在隧道传输加密的SSL数据,这样就可以将其盲转发到目的服务器上了。
五、Agent代理
定义:发起自动HTTP请求的半智能Web客户端。
特点:所有发布Web请求的应用程序都是HTTP Agent代理。
应用场景:Web浏览器,除此之外还有其他很多类型。比如:“网络蜘蛛”、“Web机器人”,他们会自己在Web上闲逛,可以在无人监视的情况下,发布HTTP请求并获取内容。自动搜索引擎“网络蜘蛛”就是Agent代理,可以从世界范围内获取Web页面。“Web机器人”可以为比较购物而自动生成产品目录。
【捞话】
如果客官们觉得小编写的不错,给个赞呀~