Nacos 2.x 入门系列【7】命名空间

395 阅读1分钟

1. 概述

Namespace(命名空间)用于进行租户粒度的配置隔离。不同的命名空间下,可以存在相同的配置或服务,他们是完全隔离的。如果在没有指定Namespace的情况下,默认使用 public 命名空间。

常用场景之一是不同环境的配置的区分隔离,例如开发测试环境和生产环境使用同一个Nacos时,可以使用命名空间进行隔离。

2. 案例演示

2.1 新建命名空间

Nacos控制台可以对命名空间进行管理: image.png 新建一个命名空间,输入名称和描述: image.png 没有输入命名空间ID时则自动生成一个唯一IDimage.png 在服务或者配置列表中,会显示新建的命名空间: image.png

2.2 客户端配置

在后台服务中,可以指定将服务注册到相应的命名空间下:

spring:
  application:
    name: order-demo
  cloud:
    nacos:
      discovery:
        username: nacos
        password: nacos
        # 命名空间
        namespace: 0faa0970-1179-4143-8aa2-cac3ee6b42ec

查看控制台,当前服务显示在了对应的命名空间下: image.png 注意事项:

  • 没有配置Namespace ID时,默认值是public
  • 如果当前Namespace不存在,不会报错,在控制台中会查询不到当前服务
  • 只有同一命名空间下的服务才可以互相调用。

3. 数据库数据

tenant_info租户信息表中,存储了命名空间信息: image.png