HTTP网关
文章目录
一、网关(Gateway)
什么是网关?
所有网络都可以根据某一个范围,划分为一个个网络段,如一个公司内部的局域网、一个城市间的城际网、一个国家、大洲范围的广域网,每一个范围都有一个网络边界,每个网络段下的硬件设备都被限制不能直接与外界网络设备通信,因此在各个网络段的网络边缘处实现一个网关,各个网络段中的设备都通过网关来通信——网关用于连接多个不同的网络
网关属于计算机网络基础部分知识,这里不做太多介绍,接下来说一下与HTTP协议有关的内容
网关,抽象出了一种能够到达资源的方法,它是资源和应用程序之间的粘合剂
————如何理解这句话?
首先,现如今Web应用越来越复杂,需要加载的资源的种类也越来越多,因此单个应用程序已经无法做到能够处理所有这些能够想到的资源,为了获取多种不同资源,就需要访问多个应用程序(多个服务器、服务器下多个应用程序),这些应用程序可能在同一个网络段下,也可能在不同的网络段下,那么对于这些各种不同资源所在的多个网络段,就可以使用一个网关连接起来,网关可以是一个服务器,可以是一个路由器,也可以是一个软件,客户端请求资源时,只要向网关请求,网关再请求对应的资源然后返回给客户端
————乍一看,这不就是代理服务器做的事情吗?这就涉及到了网关还有另一个重要的作用:协议转换
对于多个网络段下、多个服务器、应用程序之间,他们使用的网络传输协议可能是不同的,这时候网关就可以充当 “翻译”,对两个网络段中使用不同传输协议的数据进行互相的翻译转换
(代理服务器连接的是相同协议的两端、网关连接的是不同协议的两端)
二、网关的分类
一侧使用HTTP协议,另一侧使用另一种协议
1.(HTTP/)服务器端网关
网关与客户端使用HTTP协议通信,使用其他协议与服务端通信
2.(/HTTP)客户端网关
网关与客户端使用其他协议通信,使用HTTP协议与服务端通信
3.(HTTP/HTTPS)服务器端安全网关
网关将客户端发送过来的HTTP请求加密,然后再发送给服务器
4.(HTTPS/HTTP)客户端安全加速器网关
网关将客服端发送过来的加密的HTTP请求解密,然后再向服务器发送解密后的HTTP请求——网关中的解密软件解密效率高,因此无需服务器解密,减轻了服务器负担——现在很多云端都采用这种方式,HTTPS入、内网则调用HTTP
安全网关:能够做服务器端安全网关、客户端安全加速器网关这样的叫做安全网关,在微服务时代非常流行,请求出的时候,将HTTP转化为HTTPS,入的时候将HTTPS转化为HTTP
5.资源网关
客户端发送HTTP资源请求到服务器,服务器并不直接返回响应,而是将请求通过网关的api发送给运行在服务器上的运行程序,应用程序返回响应资源给客户端