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服務詳情:

 

 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):

 

 注意:如果權重修改為0,則該實例永遠不會被訪問


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM