SpringCloud Nacos 注册中心 -- 服务实例的权重设置(根据权重负载均衡)环境隔离(命名空间namespace)Nacos(细节分析)和Eureka的对比临时/非临时实例

Posted CodeJiao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringCloud Nacos 注册中心 -- 服务实例的权重设置(根据权重负载均衡)环境隔离(命名空间namespace)Nacos(细节分析)和Eureka的对比临时/非临时实例相关的知识,希望对你有一定的参考价值。

本节示例代码承接上节

1. 服务实例的权重设置(根据权重负载均衡)

根据权重负载均衡:

实例演示:

可以发现 当权重比为 1 / 0.1 的时候,当请求了10次以后,权重为1的服务被访问了9次,权重为0.1的服务被访问了1次。

注意:当权重设置为0时不会被访问。

小结:


2. 环境隔离

服务默认在public命名空间:

在Nacos控制台可以创建namespace,用来隔离不同环境:

然后填写一个新的命名空间信息:

保存后会在控制台看到这个命名空间的id:

我们现在把order-service放在dev命名空间里面,修改order-service的application.yml,添加namespace的id:

spring:
  cloud:
    nacos:
      discovery:
        namespace: 5130d401-40a1-4e64-a9f6-0ea3c12dc8e4 # 这里是命名空间的id

现在已经成功把order-service放在dev命名空间里面了

接下面我们测试一下,看一下不同命名空间可不可以通信:

发现报错了,原因是找不到服务的实例,但是我开了3个UserApplication,这就说明不同命名空间不可以通信

小结:


3. Nacos和Eureka的对比(nacos注册中心细节分析)


3.1 nacos注册中心细节分析

Eureka原理

Nacos和Eureka的对比:

补充:CP / AP方式


3.2 临时实例和非临时实例(所有服务默认均为临时实例)

所有服务默认均为临时实例:

现在我们来试着把order-service改为非临时实例:

设置成功展示:



以上是关于SpringCloud Nacos 注册中心 -- 服务实例的权重设置(根据权重负载均衡)环境隔离(命名空间namespace)Nacos(细节分析)和Eureka的对比临时/非临时实例的主要内容,如果未能解决你的问题,请参考以下文章

五SpringCloud实用篇_Nacos注册中心(上)

SpringCloud怎么使用Nacos做注册中心+配置中心?

6.SpringCloud -- 注册中心与配置中心 Nacos网关 Gateway

SpringCloud学习笔记-p2(Nacos注册中心&Nacos配置管理)

Springcloud 整合Alibaba的Nacos实现服务注册和配置中心

springcloud2-注册中心eureka及nacos