负载均衡-反向代理

前言

前面讲到重定向和DNS负载均衡,这里我们将反向代理负载均衡

代理

顾名思义就是你发送一个请求,先发送给代理, 代理帮我们去请求,最后返回数据给我们,我们和实际的机器没有直接交互.

正向代理


用户A想访问服务器B, 但是可能访问不了(IP限制),所以这个时候它在请求中设置了个服务器Z, 所以请求先到服务器Z,告诉我服务器Z我要访问服务器B, 服务器Z从服务器B获取到数据返回给客户A

反向代理

原理很相识, 但是出发点却有区别, 用户根本不知道自己其实访问的是服务器B的资源,我们以为资源在反向代理服务器Z上,用户向Z发起请求, 这个时候Z在用户不知情的情况下去服务器B上获取资源然后返回给客户

区别

  1. 正向代理:典型的就是IE浏览器中使用代理IP,或者爬虫中使用代理IP去访问网页
  2. 反向代理:典型的就是将防火墙后面的服务提供给用户;负载均衡等
    注: 反向代理和正向代理区别在于从用户本身的意志决定

负载均衡

  1. 任何对于实际服务器的HTTP请求都必须经过调度器
  2. 调度器必须等待实际服务器的HTTP响应,并将它反馈给用户

    解释:反向代理服务器,管理了一组服务器,可以根据对应的负载均衡算法将不同的请求转发到不同的服 务器上。服务器处理完成的响应也通过代理服务器返回给用户。由于内部服务器不直接对外提供访问,因此,内部服务器地址不需要使用外部IP,而反向代理服务 器则需要配置双网卡,提供内部和对外访问的IP地址<

  3. 反向代理还具有存储静态数据用于缓存的功能,加速用户的请求
    4.反向代理框架:Fikker、Nginx、Squid等

负载均衡的吞吐量权重

参考

每天进步一点点——负载均衡之反向代理