关闭

负载均衡(算法)

标签: 负载均衡算法数据库
146人阅读 评论(0) 收藏 举报
分类:

概念

    负载:后端系统的承受能力;均衡:保证后端请求的平衡。

    一种算法,在跨平台系统调用的时候,考虑到后端机器承载情况的前提下,保证请求分配的平衡和合理。

为什么需要(what?)

    1、负载——当请求量过大,超过后端机器的承受能力时,有可能会导致某台机器宕机,同时也可能会引起连锁反应,导致服务器瘫痪。

    2、均衡——合理利用资源,保证相应时间。

怎么做(how?)

1、负载算法

    手工配置:根据各个机器的承受能力,固定宽度。多用于中小型系统,因为性能配置和承受能力都比较清楚。

    动态调整:根据机器的运行状态和历史平均值进行对比,动态设定宽度。

2、均衡算法

A、随机算法

    选取后端服务器的时候,采取随机的一个方法。

优缺点:均衡(从概率上来说)性,无状态性。

案例:最常用的方法。

B、轮训算法

    预先设定一个数组,作为固定排序,按顺序选取后端服务器。

优缺点:均衡性,有状态性。

C、一致哈希算法

    规定数据的范围,从0~2的32次方,首尾相连形成一个圆圈,以这个圆圈作为选取后端服务器的标准。使用hash算法计算并得到相应服务器的值,并标记在圆圈的某些点(Node-A,Node-B),而每一次请求也同样以这个hash算法计算得到相应的值,并标记在圆圈上的某些点(request-1,request-2),然后通过顺时针方向找到第一个服务器。

优缺点:无状态性,散列不变性,异常情况后可分散性。

案例:多用于cash缓存,将资源固定存储到某台服务器上。

D、主备算法

    将请求尽量放到某台固定的服务器上,再提供一些服务器做为备份,如果存在问题,则切换到另外的某台服务器上。

案例:一些特殊的情况下,为了保证数据的时序性。——未搞懂,后续补充


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:273次
    • 积分:22
    • 等级:
    • 排名:千里之外
    • 原创:2篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档
    阅读排行