正向代理和反向代理

概念

是一个位于客户端和目标服务器的代理服务器(中间服务器)。(特点:指定目标服务器;客户端需要做一些设置)
正好相反;客户端向反向代理发送请求,接着反向代理决定请求走向何处,并将请求转交给客户端。

1652669878(1).jpg

注:正向代理中,proxy和client同属一个LAN,对server透明;反向代理中,proxy和server同属一个LAN,对client透明。实际上proxy在两种代理中做的事都是代为收发请求和相应,不过从结构上来看正好左右互换了下,所以前者叫正向后者叫反向。

区别

  • 正向代理是代理客户端,为客户端收发请求,使真实客户端对服务器不可见
  • 反向代理是代理服务器端,为服务器收发请求,使真实服务器对客户端不可见

从用途上来区分

  • 正向代理:用途是为了在防火墙内的局域网提供访问internet的路径;另外还可以使用缓冲特性减少网络使用率
  • 反向代理:用途是将防火墙后面的服务器提供给internet用户访问;可以完成诸如负载均衡等功能

使用场景


从上面的介绍也就可以猜出来正向代理的至少一个功能(俗称翻墙),也即:

用户A无法访问facebook,但是能访问服务器B,而服务器B可以访问facebook。于是用户A访问服务器B,通过服务器B去访问facebook,,服务器B收到请求后,去访问facebook,facebook把响应信息返回给服务器B,服务器B再把响应信息返回给A。这样,通过代理服务器B,就实现了翻墙。

从上面的介绍也可以猜出来反向代理的至少一个功能(比如负载均衡),也即:

假设用户A访问 http://www.somesite.com/something.html ,但 www.somesite.com 上并不存在something.html页面,于是接收用户请求的该服务器就偷偷从另外一台服务器上取回来,然后返回给用户,而用户并不知道something.html页面究竟位于哪台机器上。

还有一些功能如:

  • 保护和隐藏原始资源服务器
  • 加密和SSL加速
  • 缓存静态内容
  • 压缩
  • 减速上传
  • 安全
  • 外网发布

增加服务器的数量,然后将请求分发到各个服务器上,将原先请求集中到单个服务器上的 情况改为将请求分发到多个服务器上,将负载分发到不同的服务器,也就是我们所说的负 载均衡

image.png

你可能感兴趣的:(正向代理和反向代理)