随着业务的不断发展壮大,网站访问量和数据量也随之急剧增长给服务器带来了一定的负担。从用户体验层面而言,由于服务器端数据处理带来的时延,往往导致页面的响应速度过慢、操作流畅性受阻等问题。提供高效率,高质量的服务成为亟待解决的问题。负载均衡策略的出现和发展成为缓解上述问题的有效途径。
它充当着网络流中“交通指挥官”的角色,“站在”服务器前处理所有服务器端和客户端之间的请求,从而最大程度地提高响应速率和容量利用率,同时确保任何服务器都没有超负荷工作。如果单个服务器出现故障,负载均衡的方法会将流量重定向到其余的集群服务器,以保证服务的稳定性。当新的服务器添加到服务器组后,也可通过负载均衡的方法使其开始自动处理客户端发来的请求。 简言之,负载均衡实际上就是将大量请求进行分布式处理的策略。
正向代理:它代理客户端,最大特点客户端明确知道访问服务器地址替客户端发出请求 反向代理:它代理服务端,最大特点是客户端并不知道具体是哪台服务器处理了自己的请求,提高安全性。使用场景为请求量爆发增长时单台服务器无法应付,于是流量统一到代理服务器,由代理服务器根据一定规则将请求分发到各个服务器。 最大问题:如何均衡分工、控制流量、避免局部节点负载过大
Nginx: Nginx 作为一个基于 C 实现的高性能 Web 服务器,可以通过系列算法解决上述的负载均衡问题。并且由于它具有高并发、高可靠性、高扩展性、开源等特点,成为开发人员常用的反向代理工具。
负载均衡常用算法: