Nacos注册中心

Nacos简介

Nacos:( Dynamic Naming and Configuration Service)是阿里巴巴旗下的,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。Nacos 致力于发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助开发者快速实现动态服务发现、服务配置、服务元数据及流量管理。帮助开发者更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。

什么是 Nacos什么是 Nacosicon-default.png?t=N7T8https://nacos.io/zh-cn/docs/what-is-nacos.html

Nacos安装启动 

        下载地址:Tags · alibaba/nacos · GitHuban easy-to-use dynamic service discovery, configuration and service management platform for building cloud native applications. - Tags · alibaba/nacosicon-default.png?t=N7T8https://github.com/alibaba/nacos/tagswindow下载.zip后缀的文件,linux下载tar.gz,选择一个稳定版本即可,我这里使用1.4

这里为了方便一点,我们使用window下载安装

1,解压安装包到一个没有中文的目录

2,进到bin目录中,在cmd命令行输入 ,启动nacos

startup.cmd -m standalone

3,在浏览器输入 http://localhost:8848/nacos/index.html进入nacos,默认用户名和密码都是nacos

另外nacos默认端口是8848,如果你想更改端口可一个在conf目录中的application.properties中修改server.port=****即可

成功之后显示如下:

 Nacos快速入门

        之前已经使用eureka作为注册中心,现在我们使用nacos替换eureka,服务调用的代码是不需要改变的,我们只需要在父工程中添加spring-cloud-alibaba的管理依赖用来管理nacos的版本,之后将eureka的依赖换成nacos并且更改配置文件中的注册中的地址为nacos的地址即可

1,在父工程中引入spring-cloud-alibaba的管理依赖

  <!--spring-cloud-alibaba的管理依赖-->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>2.2.5.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

2,在其余两个服务(userservice和orderservice)中注册掉eureka依赖引入nacos客户端依赖

        <!--引入nacos客户端依赖-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

3,在配置文件中添加nacos配置

spring:
  application:
    name: userservice
  cloud:
    nacos:
      server-addr: localhost:8848

4,重启服务即可

成功之后nacos服务列表如下:

5,这时候我们测试查询数据吗,之前设置的负载均衡策略等等均可正常使用

Nacos的服务分级存储
1、服务分级模型介绍

服务分级模型是一种将服务层次化组织的架构设计,通常用于大型分布式系统或微服务架构中。这种模型的目标是通过将服务划分为不同的层级,实现更灵  活、可维护和可扩展的系统架构。

服务分级模型包括以下几个层级:

特性特性描述
全局级别在这个层级,通常存储全局配置和共享信息。全局级别的服务对整个系统可见,负责处理全局性的任务和配置,例如全局配置管理、认证、授权等。
集群级别集群级别的服务组织在物理或逻辑上相邻的节点上,负责处理集群内的任务和协调。这一层级的服务通常处理一组相关联的节点,提供集群级别的服务如负载均衡、故障转移、数据同步等。
服务级别在服务级别,服务被组织成逻辑单元,每个服务负责实现特定的业务功能。服务级别的服务通常是整个系统的核心,提供具体的业务逻辑,例如用户管理、订单处理等。
实例级别实例级别是最底层的层级,代表着服务的具体实例。在微服务架构中,服务可能会有多个实例运行在不同的节点上,实现负载均衡和高可用性。

通过将服务划分为这些层级,服务分级模型使得系统的不同部分能够独立演化、扩展和维护。这种分级结构使得系统更具弹性,能够更好地适应不同的需求和变化。

2,如何设置实例的集群属性

 修改application.yml文件配置集群名即可如下

spring:
  application:
    name: orderservice #指定Eureka中这个项目的服务名
  cloud:
    nacos:
      server-addr: localhost:8848 #nacos客户端地址
      discovery:
        cluster-name: HZ #配置该实例所属杭州集群就,简写

配置完成后可以看到,该实例所属集群为杭州 

更加详细了解Nacos服务分级存储模型⬇️⬇️⬇️⬇️⬇️

SpringCloud-Nacos服务分级存储模型Nacos 服务分级存储模型是 Nacos 存储服务注册信息和配置信息的核心模型之一。它通过将服务和配置信息按照不同级别进行存储,实现了信息的灵活管理和快速检索,为微服务架构下的服务发现和配置管理提供了高效、可靠的支持。本文将对 Nacos 服务分级存储模型进行深入解析。 一、服务分级模型 1、服务分级模型介绍 服务分级模型是一种将服务层次化组织的架构设计,通常用于大型分布式系统或微服务icon-default.png?t=N7T8http://www.chinasem.cn/article/701881#:~:text=Nacos%20%E6%9C%8D%E5%8A%A1%E5%88%86%E7%BA%A7%E5%AD%98%E5%82%A8%E6%A8%A1%E5%9E%8B%E6%98%AF,Nacos%20%E5%AD%98%E5%82%A8%E6%9C%8D%E5%8A%A1%E6%B3%A8%E5%86%8C%E4%BF%A1%E6%81%AF%E5%92%8C%E9%85%8D%E7%BD%AE%E4%BF%A1%E6%81%AF%E7%9A%84%E6%A0%B8%E5%BF%83%E6%A8%A1%E5%9E%8B%E4%B9%8B%E4%B8%80%E3%80%82%20%E5%AE%83%E9%80%9A%E8%BF%87%E5%B0%86%E6%9C%8D%E5%8A%A1%E5%92%8C%E9%85%8D%E7%BD%AE%E4%BF%A1%E6%81%AF%E6%8C%89%E7%85%A7%E4%B8%8D%E5%90%8C%E7%BA%A7%E5%88%AB%E8%BF%9B%E8%A1%8C%E5%AD%98%E5%82%A8%EF%BC%8C%E5%AE%9E%E7%8E%B0%E4%BA%86%E4%BF%A1%E6%81%AF%E7%9A%84%E7%81%B5%E6%B4%BB%E7%AE%A1%E7%90%86%E5%92%8C%E5%BF%AB%E9%80%9F%E6%A3%80%E7%B4%A2%EF%BC%8C%E4%B8%BA%E5%BE%AE%E6%9C%8D%E5%8A%A1%E6%9E%B6%E6%9E%84%E4%B8%8B%E7%9A%84%E6%9C%8D%E5%8A%A1%E5%8F%91%E7%8E%B0%E5%92%8C%E9%85%8D%E7%BD%AE%E7%AE%A1%E7%90%86%E6%8F%90%E4%BE%9B%E4%BA%86%E9%AB%98%E6%95%88%E3%80%81%E5%8F%AF%E9%9D%A0%E7%9A%84%E6%94%AF%E6%8C%81%E3%80%82

NacosRule负载均衡策略

1,Nacos默认发起请求调用的时候会优先同一集群的服务实例

2,如果本地集群找不到提供者,才会去其他集群寻找,并且会发出警告

3,如何配置NacosRule

        在application.yml文件中配置即可

userservice: #指定服务名
  ribbon:
    NFLoadBalancerRuleclassName: com.alibaba.cloud.pacos.ribbon.NacosRule #nacos负载均衡规则
    # NFLoadBalancerRuleclassName: com.netflix.loadbalancer.RandomRule # eureka负载均衡规则轮询
Nacos服务实例的权重设置

可以根据调整权重(0~1)来改变请求的比重,并且它支持权重为0,这样我们就可以,在不重启的情况下,惊醒服务的调整。

Eureka和Nacos对比

  • 27
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值