天天看点

nacos集群和负载均衡

1.配置集群

修改user-service的application.yml文件,添加集群配置:

spring:
  cloud:
    nacos:
      server-addr: localhost:8848 # nacos服务器地址
      discovery:
        cluster-name: SH # 集群名称
      

  

再次复制一个user-service启动配置,添加属性:

-Dserver.port=8083 -Dspring.cloud.nacos.discovery.cluster-name=HZ
      

 

启动三个服务后再次查看nacos控制台userservice服务详情:

nacos集群和负载均衡

 2.同集群优先的负载均衡

默认的

ZoneAvoidanceRule

并不能实现根据同集群优先来实现负载均衡。

因此Nacos中提供了一个

NacosRule

的实现,可以优先从同集群中挑选实例。

1)给order-service配置集群信息

修改order-service的application.yml文件,添加集群配置:

spring:
  cloud:
    nacos:
      server-addr: localhost:8848
      discovery:
        cluster-name: HZ # 集群名称
      

2)修改负载均衡规则

修改order-service的application.yml文件,修改负载均衡规则:

userservice:  #要配置的微服务名称
  ribbon:
    NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRule # 负载均衡规则(优先访问同一集群下的微服务,是随机访问,而不是轮询)
      

3.权重配置

Nacos提供了权重配置来控制访问频率,权重越大则访问频率越高。

在nacos控制台,找到user-service的实例列表,点击编辑,即可修改权重(0-1):

继续阅读