在导入eureka组件的时候已经把Ribbon一起导入,如果项目有eureka组件就不需要重新导入
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka</artifactId>
</dependency>
首先修改和增加一个提供者项目
我这里测试效果,所以复制多了一个提供者的项目,项目参考(Spring Cloud系列)1-4
修改下这个项目的端口,和增加两个提供者项目的日志输出统计次数,方便测试
修改端口,这里因为我是在同一台机器上,所有需要修改访问端口,application里面的name值要跟所有提供者项目保持一致
修改pom文件的artifactId,不然会发生冲突
修改消费者项目
修改消费者项目,因为前面接口增加了一个统计次数的参数
增加一个循环调用模拟多次请求
启动所有项目
通过postman请求客户端
访问结果,Ribbon默认是轮询
配置负载均衡策略
在Github上有11种策略:
在消费者项目上配置Ribbon的策略,红色方框内的内容
提供者的name值是提供者项目application配置文件配置的name值,图2
1.
2.
启动项目测试随机:
总结
引入了eureka组件后,负载均衡实现轮询的话只需要注意提供者的application配置文件里配置的端口和name值