负载均衡和代理简单了解
负载均衡分为服务端负载均衡、客户端负载均衡
顾名思义,服务端负载均衡是在服务端来选择服务器;
而客户端负载均衡则是由客户端选择由哪个服务器来服务;这意味着客户端需要拥有服务器的列表,并从中选择一台来提供服务;有两个问题:
- 客户端获得了太多服务器的信息,这是不必要的;
- 客户端通常并不能被服务提供者掌握,攻击者完全可以修改客户端的行为,去掉负载均衡,达到攻击的目的;
基于以上原因,我认为服务端负载均衡的使用范围更广;客户端负载均衡也有一定的使用场景,比如某些服务并不对外提供服务,而是作为内部服务使用,服务的使用者完全可由服务提供者掌控,此时可以选择客户端负载均衡,这有利于降低服务端的复杂度及降低服务端的负担;
代理
- 代理:
代理简单理解为,客户端的请求经过其他中转服务器,最终请求达到目标服务器;客户端知道目标服务器,但服务器不知道客户端;
+ 反向代理:
反向代理则反过来了,客户端请求经过nginx,然后再定向到具体的服务器,请求之初是不知道将由哪个服务器进行响应的,但是服务端是知道客户端的;
总结:
反向代理是实现负载均衡的一种实现手段;