【总结】Http和服务服务器负载均衡

来源:互联网 发布:移动感知测试软件 编辑:程序博客网 时间:2024/06/08 03:36
1,备选方案
   - 硬件:F5,Array
   - 软件:
      - Nginx
         - 优点
            - 工作在网络第七层之上,针对Http做分流策略,比如:域名,URL,目录结构正则规则比HAProxy强大
            - Nginx对网络稳定性依赖非常小,LVS对网络依赖比较大
            - Nginx安装比较简单
            - 曾担高负载稳定
            - Nginx可以可以通过端口检查服务器内部的故障
            - Nginx不仅仅负载均衡器/反向代理软件,也是强大的Web应用服务器
            - 作为强大的中层反向代理使用
            - Nginx可以作为静态网页图片服务器,性能很强大
         - 缺点
            - 支持Http,Https,Email协议
            - 支持后端服务器的端口健康检测不支持URL
      - LVS:使用Linux内核集群实现一个高性能、高可用的负载均衡服务器
         - 优点
            - 抗负载能力强,工作在四层仅作分发之用,负载软件性能最强
            - 配置性比较低
            - 工作在第四层,应用范围广,如:数据库,在线聊天室
         - 缺点
            - 不支持正则表达式处理
            - 不能动静分离
            - 复杂
      - HAProxy
         - 优点
            - 支持虚拟主机
            - 支持Session保持,Cookie引导,支持URL检测后端服务器状态
            - 支持TCP协议负载均衡转发
2,四层和七层负载均衡
   - 四层IP+端口的负载均衡。将一个Internet上合法注册的IP地址映射多个内部服务器的IP地址,对每次 TCP连接请求动态使用其中一个内部IP地址,达到负载均衡的目的
      - OSI第四层
      - 不理解应用协议,如:HTTP/FTP/MySQL
      - LVS
      - F5
   - 七层:基于URL等应用层信息的负载均衡。负载均衡控制应用层服务的内容,提供了一种对访问流量高层控制方式,适合对HTTP服务器群的应用。七层负载均衡技术通过检查流经的HTTP报头,根据报头内的信息执行负载均衡任务
      - OSI第七层
      - NginxHAProxyMySQL Proxy
      - 优点
         - 可以对客户端的请求服务器的响应进行任意意义上的修改,极大的提升了应用系统在网络层灵活性
         - 通过对HTTP报头的检查,可以检测出HTTP400、500和600系列的错误信息,因而能透明地将连接请求重新定向到另一台服务器,避免应用层故障
         - 可根据流经的数据类型(如判断数据包是图像文件、压缩文件多媒体文件格式等),把数据流量引向相应内容的服务器处理,增加系统性能
         - 能根据连接请求的类型,如是普通文本图象静态文档请求,还是asp、cgi等的动态文档请求,把相应的请求引向相应的服务器来处理,提高系统的性能及安全性
3,负载均衡算法
   - 轮循均衡(Round Robin)
   - 权重轮循均衡(Weighted Round Robin)
   - 随机均衡(Random)
   - 权重随机均衡(Weighted Random)
   - 响应速度均衡(Response Time)
   - 最少连接数均衡(Least Connection)
   - 处理能力均衡
   - DNS响应均衡(Flash DNS)
4,Web负载均衡
  • 详情请参照文章“【总结】Web负载均衡”
    • HTTP重定向
    • DNS负载均衡
    • 反向代理负载均衡
    • IP负载均衡
    • 直接路由
    • IP隧道
5,方案选择
   - 说明:
      - 中小型的Web应用,比如日PV小于1000万:Nginx
      - 机器不少DNS
      - 大型网站或重要的服务,且服务器比较多时:LVS
   - 最终方案选择:
      - NginxHttp服务,负载均衡器,反向代理
      - Tomcat应用服务器
      - MemcacheSession共享
0 0
原创粉丝点击