1 前言
负载均衡,一般包含两方面的含义。一方面是,将单一的重负载分担到多个网络节点上做并行处理,每个节点处理结束后将结果汇总返回给用户,这样可以大幅提高网络系统的处理能力;
第二个方面的含义是,将大量的前端并发访问或数据流量分担到多个后端网络节点上分别处理,这样可以有效减少前端用户等待响应的时间。
Web服务器、FTP服务器、企业关键应用服务器等网络应用方面谈到的负载均衡问题,基本隶属于后一方面的含义。因此,Nginx服务器的负载均衡主要是对大量前端访问和流量进行分流,以保证前端用户访问效率。可以说,在绝大多数的Nginx应用中,都会或多或少涉及它的负载均衡服务。
2 web负载均衡技术
2.1 DNS轮询
2.2 CDN
2.3 IP负载均衡
2.3.1 使用硬件设备
NetScaler F5 Radware Array
2.3.2 使用软件实现
LVS工作在传输层,仅做分发之用,没有流量的产生,应用广,可以对所有应用做负载均衡。
HAProxy工作在应用层。可以补充nginx的一些缺点,如session的保持、cookie的引导,以及mysql的负载均衡。
Nginx工作在7层,即应用层,是一个高性能的HTTP和反向代理服务器。只针对http和email应用做一些分流的策略,比如针对域名或目录结构。适用范围小。