美文网首页互联网科技Java架构技术进阶Java成长之路
Java程序员进阶笔记实操—大型网站架构技术之负载均衡详解

Java程序员进阶笔记实操—大型网站架构技术之负载均衡详解

作者: 程序员北游 | 来源:发表于2019-06-02 22:23 被阅读3次

    欢迎关注专栏:Java架构技术进阶。里面有大量batj面试题集锦,还有各种技术分享,如有好文章也欢迎投稿哦。

    上一篇:Java程序员进阶笔记——负载均衡详解

    三、负载均衡算法

    常用的负载均衡算法有,轮询,随机,最少链接,源地址散列,加权等方式;

    3.1 轮询
    将所有请求,依次分发到每台服务器上,适合服务器硬件同相同的场景。

    优点:服务器请求数目相同;

    缺点:服务器压力不一样,不适合服务器配置不同的情况;

    3.2 随机
    请求随机分配到各个服务器。
    优点:使用简单;

    缺点:不适合机器配置不同的场景;

    3.3 最少链接
    将请求分配到连接数最少的服务器(目前处理请求最少的服务器)。

    优点:根据服务器当前的请求处理情况,动态分配;

    缺点:算法实现相对复杂,需要监控服务器请求连接数;

    3.4 Hash(源地址散列)
    根据IP地址进行Hash计算,得到IP地址。

    优点:将来自同一IP地址的请求,同一会话期内,转发到相同的服务器;实现会话粘滞。

    缺点:目标服务器宕机后,会话会丢失;

    3.5 加权
    在轮询,随机,最少链接,Hash’等算法的基础上,通过加权的方式,进行负载服务器分配。

    优点:根据权重,调节转发服务器的请求数目;

    缺点:使用相对复杂;

    四、硬件负载均衡

    采用硬件的方式实现负载均衡,一般是单独的负载均衡服务器,价格昂贵,一般土豪级公司可以考虑,业界领先的有两款,F5和A10。

    使用硬件负载均衡,主要考虑一下几个方面:

    (1)功能考虑:功能全面支持各层级的负载均衡,支持全面的负载均衡算法,支持全局负载均衡;

    (2)性能考虑:一般软件负载均衡支持到5万级并发已经很困难了,硬件负载均衡可以支持

    (3)稳定性:商用硬件负载均衡,经过了良好的严格的测试,从经过大规模使用,在稳定性方面高;

    (4)安全防护:硬件均衡设备除具备负载均衡功能外,还具备防火墙,防DDOS攻击等安全功能;

    (5)维护角度:提供良好的维护管理界面,售后服务和技术支持;

    (6)土豪公司:F5 Big Ip 价格:15w~55w不等;A10 价格:55w-100w不等;

    缺点

    (1)价格昂贵;

    (2)扩展能力差;

    4.4小结
    (1)一般硬件的负载均衡也要做双机高可用,因此成本会比较高。

    (2)互联网公司一般使用开源软件,因此大部分应用采用软件负载均衡;部分采用硬件负载均衡。

    比如某互联网公司,目前是使用几台F5做全局负载均衡,内部使用Nginx等软件负载均衡。

    五、本次分享总结

    以上主要从负载均衡原理,分类,算法,硬件负载均衡进行了介绍。下次分享,负载均衡详解(三),主要介绍:软件负载均衡(LVS,Nginx,Haproxy,Apache特点,架构),负载均衡软件技术选型比较,应用负载均衡的问题和解决方案等方面。

    感谢您耐心看完的文章欢迎关注专栏:Java架构技术进阶。里面有大量batj面试题集锦,还有各种技术分享,如有好文章也欢迎投稿哦。

    顺便给大家推荐一个Java技术交流群:908676731,点击加入里面会分享一些资深架构师录制的视频资料:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化、分布式架构等这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多!

    相关文章

      网友评论

        本文标题:Java程序员进阶笔记实操—大型网站架构技术之负载均衡详解

        本文链接:https://www.haomeiwen.com/subject/phmfxctx.html