本文主要分析网站后台架构中的负载均衡器,企业常用的硬件负载均衡器软件负载均衡器、数据库代理服务器和数据库
1 负载均衡 在大型网站部署中,负载均衡至少有三层部署
第一层为 web server 或者缓存代理之上的负载均衡,第二层为数据库之上的负载均衡,第三层为存储设备之上的负载均衡
在第一层部署中,最常使用的是硬件负载均衡器有 F5 BIG-IP、Citrix NetScaler、Radware、Cisco CSS、Foundry等产品
这些产品价格不菲,高达几十万人民币
在中国大陆,采用F5Network 公司的BIG-IP 负载均衡交换机的网站有新浪网、雅虎、百度、搜狐、凤凰网、央视国际、中华英才网、猫扑、畅游等
之前淘宝采用 NetScaler 作为其硬件负载均衡器
后来用软件负载均衡器LVS 和 HAproxy混合使用来代替硬件负载均衡器
硬件负载均衡器可以提供 OSI 参考模型的第四/七层进行负载均衡
在第七层实现负载均衡的原理是,通过检查流经的HTTP 报头,根据报头内的信息来执行负载均衡任务
在第四层(网络层)实现负载均衡的DR 模式的原理是,通过更改请求包的目的MAC 地址来进行负载均衡
在第一层部署中,最常用的软件负载均衡器为 LVS(LinuxVirtual Server)和 HAproxy
其中LVS 采用基于 IP 负载均衡技术和基于内容请求分发技术
最常用的LVS 负载均衡技术为DR 负载均衡
在第二层部署中,最常用的为 mysql-proxy(后端部署必须为 MySQL 数据库),该代理服务器可以监测、分析或改变客户端的通信
最常用途为负载均衡,读写分离等
在第三层部署中,最常用的存储设备都要做 RAID,其中RAID0 便为最基本的存储层的负载均衡
RAID0 通过分带技术,将数据分割,然后并行的读写于各个磁盘上
这样实现底层存储