1.负载均衡Ribbon
实际环境中,往往会开启很多个
user
-
service
的集群。此时获取的服务列表中就会有多个,到底该访问哪一个呢?
一般这种情况下就需要编写负载均衡算法,在多个实例列表中进行选择。
不过
Eureka
中已经集成了负载均衡组件:
Ribbon
,简单修改代码即可使用。
什么是
Ribbon
:
接下来,我们就来使用
Ribbon
实现负载均衡。
1.1启动两个服务实例
首先我们配置启动两个
user
-
service
实例,一个
9091
,一个
9092
。
修改xxxConfiguration,并复制一份
Eureka
监控面板:
2.2. 开启负载均衡
因为
Eureka
中已经集成了
Ribbon
,所以我们无需引入新的依赖。
直接修改
consumer
-
demo\src\main\java\com\itheima\consumer\ConsumerApplication.java
在
RestTemplate
的配置方法上添加
@LoadBalanced
注解:
修改
consumer
-
demo\src\main\java\com\itheima\consumer\controller\ConsumerController.java
调用方式,不再手动获取ip
和端口,而是直接通过服务名称调用;
访问页面,查看结果;并可以在
9091
和
9092
的控制台查看执行情况: