Nacos注册中心

本文介绍了如何配置和使用Nacos作为服务注册中心。首先,通过导入依赖并配置服务地址来启用Nacos。接着,展示了如何设置集群属性、使用NacosRule实现本地优先的负载均衡,并利用命名空间进行环境隔离。此外,还对比了Nacos与Eureka在服务实例类型、健康检查和更新策略上的区别。
摘要由CSDN通过智能技术生成

Nacos注册中心

1.导入依赖

父工程:

<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>

客户端:

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

2.修改配置文件

在spring下

spring:
 cloud:
   nacos:
    server-addr: localhost:8848 #nacos服务地址

注意:将eureka的配置注释

打开 http://192.168.67.1:8848/nacos/index.html

注册成功:

服务集群属性

1.修改application.xml文件

cloud:
  nacos:
    server-addr: localhost:8848 #nacos服务地址
    discovery:
      cluster-name: sh #集群名称

集群属性发生改变

NacosRule负载均衡

  1. 使用orderserver优先使用本地集群

1.修改ordersever的配置文件

cloud:
  nacos:
   server-addr: localhost:8848 #nacos服务地址
   discovery:
     cluster-name: HZ  #集群名称

2.在orderserver中设置负载均衡的IRule为NacosRule,这个规则会优先寻找与自己同集群的服务

userserver:
   ribbon:
     NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRule
  • 在本地集群内的多个服务采用随机访问
  • 当本地集群没有服务时,会跨集群访问(控制台会有警告)

根据权重负载均衡

image-20220813104437088

当权重设置为0时,该服务不会被访问

环境隔离-namespace

1.创建命名空间

image-20220813105303629

image-20220813105336057

2.修改配置文件

cloud:
  nacos:
    server-addr: localhost:8848 #nacos服务地址
    discovery:
      cluster-name: SH #集群名称
      namespace: 8ab87621-eed5-4091-8c5d-ca7fe33fe0ff   #dev环境的uuid

不同namespace下的服务不可见

Nacos和Eureka的对比

Nacos的服务实例分为两种类型:

  • 临时实例:如果实例宕机超过一定时间,会从服务列表剔除,默认的类型。
  • 非临时实例:如果实例宕机,不会从服务列表剔除,也可以叫永久实例。
cloud:
  nacos:
   server-addr: localhost:8848 #nacos服务地址
   discovery:
     cluster-name: HZ  #集群名称
     namespace: 8ab87621-eed5-4091-8c5d-ca7fe33fe0ff #dev环境
     ephemeral: false #修改为非临时实例

Nacos与eureka的共同点

  • 都支持服务注册和服务拉取
  • 都支持服务提供者心跳方式做健康检测

Nacos与Eureka的区别

  • Nacos支持服务端主动检测提供者状态:临时实例采用心跳模式,非临时实例采用主动检测模式
  • 临时实例心跳不正常会被剔除,非临时实例则不会被剔除
  • Nacos支持服务列表变更的消息推送模式,服务列表更新更及时
  • Nacos集群默认采用AP方式,当集群中存在非临时实例时,采用CP模式;Eureka采用AP方式
Nacos注册中心,全称为Dynamic Naming and Configuration Service,是一个动态命名和配置服务。它是以服务为核心的注册中心和配置中心。 在分布式项目中,Nacos充当了注册中心的角色。它提供了服务注册和发现的功能,使得不同的服务能够方便地注册到Nacos上,并通过Nacos进行服务的发现。同时,Nacos还提供了配置中心的功能,可以将配置信息集中管理,并实时推送给相关的服务。 相比于其他的注册中心组件,Nacos具有灵活性和易用性。它支持多种注册方式,包括基于HTTP/REST的注册方式、基于DNS的注册方式以及基于RPC的注册方式。此外,Nacos还提供了丰富的API和界面,使得用户能够方便地管理和监控注册的服务和配置信息。 关于Nacos的下载安装和配置,可以通过官方网站进行下载,并按照官方文档的指引进行安装和配置。Nacos的目录结构和外部数据库的配置也可以在官方文档中找到相应的说明。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Nacos学习之初识Nacos](https://blog.csdn.net/weixin_42601136/article/details/121761177)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [Nacos注册中心的部署与用法详细介绍](https://blog.csdn.net/a745233700/article/details/122915663)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值