Nacos服务发现

Nacos 服务发现

一、什么是Nacos

  • 官方文档:https://nacos.io/zh-cn/docs/quick-start.html
  • Nacos是一个服务发现组件同时也是一个配置服务器
  • 解决了两个问题:
    • 服务A怎样找到服务B
    • 管理微服务的配置

二、架构演进

  • 加入nacos 系统架构就会演变成下种状态
    在这里插入图片描述

三、搭建Nacos Server

下载Nacos
  • 下载地址:https://github.com/alibaba/nacos/releases
  • 打开项目springcloud alibaba依赖spring-cloud-alibaba-dependencies文件搜索Nacos,查看Nacos Client版本,在下载地址中查找对应的版本下载。
搭建Nacos Server
  • 参考文档:https://nacos.io/zh-cn/docs/quick-start.html
将应用注册到Nacos
  • 加依赖
 <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
  • 没有注解
  • 写配置
spring:
  cloud:
    nacos:
      discovery:
        # 指定 nacos server的地址
        server-addr: localhost:8848
        # 命名空间
        namespace: 0f1fe6bf-c63b-41d0-8dab-3243e825ba61
        # 集群名称
        cluster-name: NJ
        
  application:
    #服务名称,尽量用中划线 -
    name: user-center
DiscoveryClient

先声明对象

@Autowired
    private DiscoveryClient discoveryClient;

在方法中使用

//查询id对应服务的所有实例的信息
        List<ServiceInstance> instances = this.discoveryClient.getInstances("user-center");
        //查询当前服务发现组件注册了哪些微服务
        List<String> services = this.discoveryClient.getServices();

四、服务发现的领域模型

  • Namespace:实现隔离,默认为public
  • Group:不同服务可以分到一个组,默认DEFAULT_GROUP
  • Service:微服务
  • Cluster:集群,对指定微服务的一个虚拟划分
  • Instance:微服务实例

五、元数据

Nacos数据(如配置和服务)描述信息,如服务版本、权重、容灾策略、负载均衡策略、鉴权配置、各种自定义标签 (label),从作用范围来看,分为**服务级别的元信息、集群的元信息及实例的元信息**

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值