负载均衡(Load Balance,简称LB)是⼀种服务或基于硬件设备等实现的⾼可⽤反向代理技术,负载均衡将特定的业务(web服务、⽹络流量等)分担给指定的⼀个或多个后端特定的服务器或设备,从⽽提⾼了公司业务的并发处理能⼒、保证了业务的⾼可⽤性、⽅便了业务后期的⽔平动态扩展。

一、为什么要用负载均衡?

1、Web服务器的动态⽔平扩展
2、解决单服务器并发瓶颈问题
3、节约公⽹IP地址
4、隐藏内部服务器IP,提⾼内部服务器安全
5、配置简单
6、⽀持四层和七层负载,⽀持动态下线主机

二、负载类型

四层负载:LVS(Linux Virtual Server)、HAProxy(High Availability Proxy)、Nginx(1.9)
七层负载:HAProxy、Nginx
硬件负载:F5、Netscaler、Array、深信服、北京灵州

三、HAProxy各类版本

企业版:https://www.haproxy.com/
社区版:http://www.haproxy.org/
github:https://github.com/haproxy

四、HAProxy功能

TCP和HTTP反向代理
SSL/TSL服务器
可以针对HTTP请求添加cookie,进⾏路由后端服务器
可平衡负载⾄后端服务器,并⽀持持久连接
⽀持所有主服务器故障切换⾄备⽤服务器
⽀持专⽤端⼝实现监控服务
⽀持不影响现有连接情况下接受新连接请求
可以在双向添加,修改或删除HTTP报⽂⾸部
响应报⽂压缩
⽀持基于pattern实现连接请求的访问控制
通过特定的URI为授权⽤户提供详细的状态信息

五、HAProxy不具备的功能:

正向代理–squid,nginx
缓存代理–varnish
web服务–nginx、tengine、apache、php、tomcat
UDP–⽬前不⽀持UDP协议,2.1版本会⽀持UDP协议代理
单机性能–LVS(DR)

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐