正向代理:
我们可以假设三个主机叫A(客户端)/B(中间人|代理)/C(服务器|服务端),而A不能直接访问C,为什么不能直接访问呢?或是因为防火墙又或是因为各种限制原因导致的。
这时候就可以使用代理(所谓代理也不过就是一台主机罢了,没什么神秘的)服务,把A原本的请求交付给B,让B替代你去访问C,然后B把C的响应结果由B转发给A,这就是代理(正向代理)了。
还有一点就是代理可以提高你的访问速度。假设A到C之间的网络特别的拥塞,速度非常的慢,这时候使用代理是不是可以提高访问的速度呢
正向代理主要是针对客户端的,代理会隐藏客户端(A)的真实信息(包括IP,端口啥的),以代理(B)自己的身份去替代客户端在互联网上发请求,然后把对方(C)响应的结果再转发客户端
那么总结一下:1.代理可以提高安全性和保护用户的隐私
2.代理可以帮助你访问不可直接到达的网络(绕过地理限制)
3.代理可以提高访问的速度
4.需要注意的是:代理服务器可能存在一定的风险,代理服务器可能记录你的活动。所以选择一个合适的代理服务器也是很重要的。
反向代理:
正向代理和方向代理是两种不同类型的代理服务器,它们的作用和应用的场景也是不同的。
反向代理主要针对的是服务端,反向代理会隐藏的是服务端的真实信息,旨在保护后台服务器
当客户端发出请求时,请求首先发送到反向代理服务器,然后反向代理服务器根据一定的规则将请求转发到后端的目标服务器,然后再把目标服务器对客户端请求的响应返回给客户端。
反向代理常用于负载均衡、提供安全性和可靠性、隐藏后端服务器等功能。例如,当用户访问一个网站时,请求经过反向代理服务器,由代理服务器将请求转发到可用的后端服务器,实现负载均衡和高可用性。
(负载均衡的概念在图里有详细讲解,保证一讲就懂!高可用性嘛就是实现了负载均衡这么一个技术所到达的一个什么效果就是高可用性啦)
最后再总结一下:
正向代理和反向代理最主要的区别就是,正向代理针对的是客户端,为客户端服务的;而反向代理针对的是服务端,为了保护后台服务器的。