Skip to content

返回目录

Ribbon负载均衡原理

负载均衡原理

负载均衡策略

内置负载均衡规则类规则描述
RoundRobinRule简单轮询
AvailabilityFilteringRule进行忽略
WeightedResponseTimeRule赋予权重值
ZoneAvoidanceRule以区域可用轮询,默认
BestAvailableRule忽略短路,选择并发数较低
RandomRule随机选择
RetryRule重试机制

修改负载均衡规则

方式1、代码方式

作用范围:全局

java
@Bean
public IRule randomRule(){
    return new RandomRule();
}

方式2、配置方式

作用范围:指定服务

application.yml

yaml
userservice:
    ribbon:
        # 负载均衡规则
        NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule

懒加载

Ribbon默认采用懒加载模式

开启饥饿加载

yaml
ribbon:
    eager-load:
        # 开启饥饿加载
        enabled: true 

        # 指定对userservice这个服务饥饿加载
        clients: 
            - userservice