在之前的eureka-client-provider项目的CenterController.java中加入如下代码
private Logger logger= LoggerFactory.getLogger(CenterController.class);
@RequestMapping("/ribbon.do")
public String ribbonTest(@RequestParam("count") Integer count){
logger.info("provider>>> "+count+" <<<eureka-client-provider-8762");
return "provider的ribbon测试";
}
编写之后在创建一个和eureka-client-provider一模一样的提供者项目,除了重新定义一个8769端口号之外,其他代码全部一样;
的pom.xml中添加如下依赖
<!--@ribbon-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-ribbon</artifactId>
</dependency>
在ClassesFeign.java文件中添加如下内容
@RequestMapping("/ribbon.do")
public String ribbonTest(@RequestParam("count")int count);
在ClassesController.java中添加如下内容
@RequestMapping("/ribbontest.do")
public String ribbonTest(){
for(Integer i=0;i<10;i++){
//多次调用provider服务
classesFeign.ribbonTest(i);
}
return "ribbon负载";
}
eureka-server、eureka-client-provider、eureka-client-provider-second、eureka-client-consumer



1.在eureka-client-consumer项目中添加如下属性配置
#设置负载均衡策略为随机分配RandomRule,如果不设置以下属性则默认值为RoundRobinRule 轮询策略 client-school-provider.ribbon.NFLoadBalancerRuleClassName=com.netflix.loadbalancer.RandomRule
2.重启项目在运行


此帖子为原创
作者:红酒人生
联系方式:微信/QQ:964918306
转载请注明出处:https://www.cnblogs.com/holly8/p/11055177.html
springcloud(十三):Ribbon客户端负载均衡实例
原文:https://www.cnblogs.com/sqkj0529/p/12776865.html