介绍
:::tips 一个服务可以有多个实例,假如这些实例分布于全国各地的不同机房,Nacos就将同一机房内的实例划分为一个集群
一个服务可以包含多个集群(Zone),如杭州、上海,每个集群下可以有多个实例,形成分级模型
微服务互相访问时,应该尽可能访问同集群实例,因为本地访问速度更快,当本集群内不可用时,才访问其它集群 :::
配置文件
:::tips 在每个微服务模块中配置集群名称 :::
server:
#配置服务端口
port: 端口号
spring:
application:
#配置服务名称
name: 服务名称
cloud:
nacos:
#配置Nacos的地址,相当于同时配置了Nacos注册中心以及配置中心的地址
server-addr: localhost:8848
discovery:
#配置集群名称
cluster-name: 集群名称
同集群优先的负载均衡策略
:::tips 默认的ZoneAvoidanceRule不能实现根据同集群优先来实现负载均衡,因此Nacos中提供了一个NacosRule的实现,可以优先从同集群中挑选实例,再采用随机负载均衡挑选实例 :::
服务提供者的名称:
ribbon:
#配置负载均衡策略
NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRule