ribbon负载均衡算法
IRule是以下七种负载均衡算法的父接口
说明:
- RoundRobinRule: 默认轮询的方式
- RandomRule: 随机方式
- WeightedResponseTimeRule: 根据响应时间来分配权重的方式,响应的越快,分配的值越大。
- BestAvailableRule: 选择并发量最小的方式
- RetryRule: 在一个配置时间段内当选择server不成功,则一直尝试使用subRule的方式选择一个可用的server
- ZoneAvoidanceRule: 根据性能和可用性来选择。
- AvailabilityFilteringRule: 过滤掉那些因为一直连接失败的被标记为circuit tripped的后端server,并过滤掉那些高并发的的后端server(active connections 超过配置的阈值)
其他负载均衡算法
http://dubbo.apache.org/zh-cn/docs/source_code_guide/loadbalance.html
LeastActiveLoadBalance:最小活跃数负载均衡算法
ConsistentHashLoadBalance:一致性hash算法