Ribbon负载均衡策略
配置
- 对调用的某个服务启用某种负载策略
1)通过配置文件配置
hello:
ribbon:
NFLoadBalancerRuleClassName:com.netflix.loadbalancer.RandomRule
- 1
- 2
- 3
2)通过java注解配置
@Configuration
public class RibbonConfiguration{
@Bean
public IRule ribbonRule(){
//随机负载
return new RandomRule();
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
通过注解@RibbonClient
为特定的服务配置负载均衡策略
@Configuration
@RibbonClient(name="hello", configuration=RibbonConfiguration.class)
public class TestRibbonConfiguration{
}
- 1
- 2
- 3
- 4
以上配置都是在服务消费者中配置。
单独使用Ribbon
因为往往Ribbon配合Eureka使用的,往往也有第三方服务没有注册到Eureka Server,但也部署了多个实例,也需要进行负载均衡,这时可以在服务消费者的配置文件中进行如下方式配置,实现负载均衡
hello:
ribbon:
listOfServers:localhost:8010,localhost:8011