什么是反向代理

代理

其实就是一个中介,A和B本来可以直连,中间插入一个C,C就是中介。

正向代理

正向代理类似一个跳板机,代理访问外部资源。

比如我们国内访问谷歌,直接访问访问不到,我们可以通过一个正向代理服务器,请求发到代理服务器,代理服务器能够访问谷歌,这样由代理去谷歌取到返回数据,再返回给我们,这样我们就能访问谷歌了。
什么是反向代理_第1张图片

正向代理的用途

(1)突破自身IP访问限制,访问原来无法访问的资源,如google
​ (2) 可以做缓存,加速访问资源。通常代理服务器都设置一个较大的硬盘缓冲区,会将部分请求的响应保存到缓冲区中,当其他用户再访问相同的信息时, 则直接由缓冲区中取出信息,传给用户,以提高访问速度。
(3)对客户端访问授权,上网进行认证
(4)代理可以记录用户访问记录(上网行为管理),对外隐藏用户信息

反向代理

反向代理(Reverse Proxy)实际运行方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。对于常用的场景,就是Web开发中用到的负载均衡服务器。
什么是反向代理_第2张图片

反向代理的作用

(1)使用反向代理,可以对客户端隐藏服务器的IP地址 。保证内网的安全,阻止web攻击,大型网站通常将反向代理作为公网访问地址,Web服务器是内网。反向代理服务器可以作为应用层防火墙,为网站提供对基于Web的攻击行为(例如DoS/DDoS)的防护,更容易排查恶意软件等。还可以为后端服务器统一提供加密和SSL加速(如SSL终端代理),提供HTTP访问认证等。

(2)负载均衡,通过反向代理服务器来优化网站的负载。反向代理服务器可以做负载均衡,根据所有真实服务器的负载情况,将客户端请求分发到不同的真实服务器上

(3)提高访问速度:反向代理服务器可以对于静态内容及短时间内有大量访问请求的动态内容提供缓存服务,提高访问速度。

总结

什么是反向代理_第3张图片
正向代理中,proxy和client同属一个LAN,对server透明;
反向代理中,proxy和server同属一个LAN,对client透明。
实际上proxy在两种代理中做的事都是代为收发请求和响应,不过从结构上来看正好左右互换了下,所以把后出现的那种代理方式叫成了反向代理.

你可能感兴趣的:(javaweb,服务器,网络,运维,代理,反向代理)