15、Nacos 教程 - 服务发现之微服务协作调用多实例负载均衡

前言

微服务的负载均衡。
代码已共享至
Gitee:https://gitee.com/lengcz/nacosdiscovery01.git
Github:https://github.com/lengcz/nacosdiscovery01.git

多实例负载均衡

根据13、Nacos 教程 - 服务发现之Spring Cloud服务协作流程章节的例子,我们启动多个生产者实例。
当前生产者只有一个实例
 

1. 启动多个生产者实例

1、 点击EditConfigurations;
  2、 创建两个快捷启动;
  3、 通过这两个快捷方式启动;
 
  4、 在nacos后台可以看到provider注册了两个实例;
 

2. 启动消费者实例

1、 启动消费者模块;
  2、 访问接口http://127.0.0.1:10002/service,会发现10003实例被访问了,如果再次请求,则发现10004实例被访问了经过多次请求,我们发现消费者依次交替调用两个实例,这说明它采用的是轮询的方式进行负载均衡调用;
 
 

3. 更换负载均衡器

1、服务的消费方的application.properties配置文件里配置负载均衡器;

#配置负载均衡器
provider.ribbon.NFLoadBalancerRuleClassName=com.netflix.loadbalancer.RandomRule

 

1、 重启消费者服务实例,再次请求接口http://127.0.0.1:10002/service,负载均衡每次都是随机的,表明了我们当前的RandomRule规则是生效的;