概念1:反向代理与正向代理
2021-05-19 本文已影响0人
朝朝Mumu
概念科普系列
太长不看版本:
正向代理隐藏真实客户端,反向代理隐藏真实服务端。
先说说正向代理。
比如你全权委托中介帮你卖掉你面朝大海的别野,此时中介就是你的代理人,这就是一个正向代理,买房者不知道你的神秘身份。又比如你想去谷歌查查论文资料,于是你使用了一个科学上网工具去访问,那么这个工具就相当于你的上网正向代理,代理替你拿到数据然后再返回给你。
我们常说的代理一般都是正向代理,正向代理的过程,它隐藏了真实的请求客户端,服务端不知道真实的客户端是谁。
好了,那什么是反向代理?
反向代理就是隐藏了真实的服务端。举个例子,你在某宝上开心地浏览商品,突然发现了心仪已久的限量版AJ降价了,你立马点击“客服”按钮来问客服这不是正品,一个名为“奔波儿灞”的小姐姐为你服务,下午你又来问可能就是一个名为“灞波儿奔”的,还可能是小明、小雪和小红,那么这里“客服”这个按钮就是反向代理,我们按之前不知道真正提供服务的人是谁。
平时你打开浏览器输入“baidu.com”开始百度,背后是成千上万的服务器为你的浏览服务,具体是哪一台,你不知道也不关心,这也是反向代理在工作。百度这个网址就是反向代理的入口,它帮你把请求发给真正提供搜索功能的服务器。
总结:
正向代理: 客户端 <一> 代理 一>服务端
反向代理: 客户端一> 代理 <一> 服务端
通常把网络中直接面向用户连接或访问网络的部分称为接入层(接入层目的是允许终端用户连接到网络)。
如何解决接入层的扩展性问题?
答案是引入反向代理。
最常见的反向代理是什么?
是Nginx。
nginx异步非阻塞、IO密集型、适合做反向代理。
apache每个请求独占一个线程,适合做webserver
点:反向代理、负载均衡
线:Nginx
面:后端