Nacos分级存储模型及NacosRule负载均衡详解【示例实操】

一、Nacos服务分级存储模型

一个服务可以有多个实例,例如我们的user-service,可以有:

127.0.0.1:8081
127.0.0.1:8082
127.0.0.1:8083
假如这些实例分布于全国各地的不同机房,例如:

127.0.0.1:8081,在上海机房
127.0.0.1:8082,在上海机房
127.0.0.1:8083,在杭州机房
Nacos就将同一机房内的实例 划分为一个集群。

也就是说,user-service是服务,一个服务可以包含多个集群,如杭州、上海,每个集群下可以有多个实例,形成分级模型,如图:

1、一级为服务,例如提供用户服务的userservice
2、二级为集群,例如:上海机房、杭州机房
3、三级为实例,例如:上海机房中某台部署了userservice的机器。

1、既然提供相同服务的所有实例共同构成了一级存储模型:服务,那服务下实例又是如何划分集群的呢?

通过Application配置文件加以控制。

spring:
  cloud:
    nacos:
      discovery:
        cluster-name: HZ  # 配置集群名称,即机房的位置,例如配置杭州机房缩写首字母

2、划分集群后,如何查看?

在nacos控制台即可看到变化(服务管理-服务列表-详情)。
在这里插入图片描述
在这里插入图片描述

借助IDE增加集群下服务,操作方式如下

1、选择服务,右键,然后选择如图所示
在这里插入图片描述
2、根据需要修改name名称
3、配置必要参数,这里配置了端口号及集群名称

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

在这里插入图片描述

4、找到刚刚创建的服务名称,启动
在这里插入图片描述

3、nacos控制台查看,HZ集群中增加该服务在这里插入图片描述

二、配置NacosRule负载均衡

userservice: # 生产者名称
  ribbon:
    NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRule  # 负载均衡规则
NacosRule负载均衡规则如下:

1、优先本地集群访问(集群内实例随机访问)
2、本地集群无可用服务时,访问其他集群,并打印跨集群访问警告进行提醒

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值