SpringCloud(八):使用配置文件自定义Ribbon
上篇介绍到代码实现ribbon的自定义,这篇继续介绍用配置文件来完成自定义。
1、复制原先ribbon项目更改为:microservice-consumer-movie-ribbon-properties-customizing
更新pom,application.yml中的名称,在parent的pom文件中加入其module。
2、去掉原先代码实现的注解和类文件。
@RibbonClient(name="microservice-provider-user",configuration = TestConfiguration.class) @ComponentScan(excludeFilters={@ComponentScan.Filter(type=FilterType.ANNOTATION,value=ExcludeFromComponentScan.class)})
ExcludeFromComponentScan.java
TestConfiguration.java
3、在application.yml中添加内容
这里选用的是负载均衡的随机策略。
microservice-provider-user: ribbon: NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule
4、启动
先启动eureka,再启动四个提供者实例,7900,7901,7902(user2),7903(user2),修改application.yml即可。最后启动消费者。启动成功界面:
5、访问页面:localhost:8010/test,刷新八次。
可以看到111开头的为随机,222开头的轮询。
小结
到这里,展示就完成了。这里用配置文件类自定义Ribbon。
其中:
microservice-provider-user: ribbon: NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule这里可以更换不同的负载均衡策略。
完整的项目源码在后期博客分享,敬请期待。。。