反向代理,是位于用户与目标服务器之间的一种代理服务。
但它是代表目标服务器来处理请求的。
具体来说:
1、当用户发出请求时,这些请求首先会到达反向代理服务器,而不是直接发送到目标服务器。
2、反向代理会根据一定的规则(如负载均衡策略)将用户的请求转发到后端的一组或多组服务器上进行处理。
3、处理完成后,后端服务器会将结果返回给反向代理,再由反向代理将这些结果转发回给用户。
三、正向代理和反向代理的区别
1、用途不同
正向代理的典型用途是为在防火墙内的局域网客户端提供访问I的途径。反向代理的典型用途是将防火墙后面的服务器提供给I用户访问。
2、目的不同
正向代理,实际代理的是客户端。
而反向代理,实际代理的是目标服务器。
3、代理架构不同
正向代理是客户端架构,而反向代理是服务器架构。
4、服务对象不同
正向代理中,服务器不知道真正的用户是谁。
反向代理中,用户不知道真正的服务器是谁。
四、正向代理的典型VPN
VPN(Virtual Private work,虚拟专用网络)确实可以被视为一种典型的正向代理。
正向代理,是指位于客户端和原始服务器(in server)之间的服务器。
它代表客户端向原始服务器发送请求并获取内容,然后将这些内容返回给客户端。
VPN的工作原理正是如此。
它为用户的网络请求提供代理服务,使得用户可以通过VPN安全地访问各种网站和服务。
同时隐藏用户的真实IP地址,保护用户的隐私和网络安全。
五、反向代理的代表Nginx
实际上,Nginx既可以作为正向代理,也可以作为反向代理。
以下是两种代理模式的具体介绍:
1、正向代理
在这种模式下,客户端(用户)明确知道他们想要访问的数据资源位于哪个服务器上,但客户端无法直接访问那个服务器。
因此,客户端通过一个代理服务器来访问目标服务器。
代理服务器充当了客户端和目标服务器之间的中间层,负责将客户端的请求转发给目标服务器,并将目标服务器的响应返回给客户端。
2、反向代理
在这种模式下,客户端通常不知道他们正在与反向代理服务器通信,而是认为他们直接与后端服务器通信。
反向代理服务器接受客户端的请求,并将这些请求转发给后端服务器。
后端服务器处理请求并返回响应,反向代理服务器再将响应返回给客户端。
在这种模式下,客户端对代理是无感知的,因为客户端不需要进行任何额外的配置就可以访问。
另外,Nginx不仅支持这两种代理模式,还可以用作负载均衡器、缓存服务器和电子邮件代理服务器等。
……
以上,就是关于代理,Java中的代理,正反代理的定义、区别、典型代表的总结了。
理解它,掌握它,会让你在今后的IT程序员开发工作中,一路砍瓜切菜,所向披靡的。
So,你get到%多少了?
(——本章玩——)
(评论、关注、收藏,一键三连可好?)