当前位置: 代码迷 >> 综合 >> dubbo负载算法总结
  详细解决方案

dubbo负载算法总结

热度:28   发布时间:2024-03-09 19:21:43.0

负载均衡:它的职责是将网络请求,或者其他形式的负载“均摊”到不同的机器上。避免集群中部分服务器压力过大,而另一些服务器比较空闲的情况。通过负载均衡,可以让每台服务器获取到适合自己处理能力的负载。在为高负载服务器分流的同时,还可以避免资源浪费,一举两得。负载均衡可分为软件负载均衡和硬件负载均衡;

软件负载均衡还是可以接触到的,比如 Nginx

Dubbo 需要对服务消费者的调用请求进行分配,避免少数服务提供者负载过大。服务提供者负载过大,会导致部分请求超时。因此将负载均衡到每个服务提供者上,是非常必要的;

Dubbo 提供了4种负载均衡实现:

RandomLoadBalance:加权随机算法的

LeastActiveLoadBalance:加权最小活跃数算法

ConsistentHashLoadBalance:hash一致性算法 

RoundRobinLoadBalance:加权轮询算法 

一、dubbo在调用过程中是如何进行负载的?

来看一下源码

package com.alibaba.dubbo.rpc.cluster.support;
public abstra