dubbo学习笔记-负载均衡算法

我的学习方法:

1-应用::根据业务场景(小)写个demo ;

2-源码::不必全部看懂,知道一些关键类就可以;

3-官方文档::

  现在主流的文档在github都找得到,另外开源的在apache官网上也可以找得到.

apache-dubbo负载均衡官方文档

一些关键知识点梳理:

  • 负载均衡

LoadBalance 中文意思为负载均衡,它的职责是将网络请求,或者其他形式的负载“均摊”到不同的机器上。避免集群中部分服务器压力过大,而另一些服务器比较空闲的情况。通过负载均衡,可以让每台服务器获取到适合自己处理能力的负载。在为高负载服务器分流的同时,还可以避免资源浪费,一举两得。负载均衡可分为软件负载均衡和硬件负载均衡。在我们日常开发中,一般很难接触到硬件负载均衡。但软件负载均衡还是可以接触到的,比如 Nginx。在 Dubbo 中,也有负载均衡的概念和相应的实现。Dubbo 需要对服务消费者的调用请求进行分配,避免少数服务提供者负载过大。服务提供者负载过大,会导致部分请求超时。因此将负载均衡到每个服务提供者上,是非常必要的。

nginx和dubbo负载均衡有区别:   若理解不到位或者有补充,欢迎留言.

(1) nginx是静态负载均衡,dubbo是动态负载均衡;

(2) nginx吞吐量更高;

(3) nginx是服务器端的负载均衡,而dubbo更多是服务客户端的负载均衡;

(4) dubbo提供至少5种负载均衡算法,而nginx提供两种(顺序轮询,权重轮询).

为什么说至少,因为dubbo使用SPI机制实现负载均衡,意味着可以自定义负载均衡算法.

基于dubbo2.7.8 提供5种均衡负载算法  ------>  源码查看类就可以看出提供多少种

  1. ConsistentHashLoadBalance 一致性hash算法 
    
  2. LeastActiveLoadBalance 最小活跃 服务器性能越高,吞吐量越高,处理就快,活跃度就低,权重越大.
  3. RandomLoadBalance 随机负载均衡
  4. RoundRobinLoadBalance 加权轮询
  5. ShortestResponseLoadBalance 最小响应
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值