Nacos是什么?

Nacos是阿里巴巴的产品,选择是SpringCloud中的一个组件,比Eureka组件功能更加丰富. 一个项目要想成为微服务项目体系的一部分必须将当前项目的信息注册到Nacos. 我们要添加一些配置,实现模块启动时注册到Nacos的效果.

Nacos环境配置

  1. 下载安装包
  2. 解压文件
  3. 在bin目录下,直接在地址栏输入cmd命令打开,输入startup.cmd -m standalone运行

项目搭建

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>

2.在需要注册服务的模块添加依赖

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

3.配置yml文件

spring:application:# 为当前项目起名,这个名字会被Nacos收集,并显示在注册列表中name: nacos-businesscloud:nacos:discovery:# 配置Nacos的位置,用于当前项目连接server-addr: localhost:8848

注册成功!

Nacos能做什么?

  • 服务注册发现和服务健康检测
    Nacos支持基于DNS和基于RPC的服务发现,服务端可以通过SDK或者Api进行服务注册,相应的服务消费者可以使用DNS或者Http查找的方式获取服务列表。Nacos同时提供对服务的实时健康检查,阻止想不健康的主机或服务发送请求,与Eureka类似Nacos也有友好的控制台界面。
  • 动态DNS服务
    支持权重路由,更容易地实现中间层负载均衡、更灵活的路由策略、流量控制以及数据中心内网的简单DNS解析服务。不过这个特性目前版本还不支持
  • 服务及元数据管理
    Nacos 能让您从微服务平台建设的视角管理数据中心的所有服务及元数据,包括管理服务的描述、生命周期、服务的静态依赖分析、服务的健康状态、服务的流量管理、路由及安全策略、服务的 SLA 以及最首要的 metrics 统计数据。

Nacos心跳机制

心跳:周期性的操作,来表示自己是健康可用的机制

注册到Nacos的微服务项目(模块)都是会遵循这个心跳机制的

目的,是每个服务和Nacos保持沟通和交换信息的机制

默认情况下,服务启动开始每隔5秒会向Nacos发送一个"心跳包",这个心跳包中包含了当前服务的基本信息

Nacos接收到这个心跳包,首先检查当前服务在不在注册列表中,如果不在按新服务的业务进行注册,如果在,表示当前这个服务是健康状态

如果一个服务连续3次心跳(默认15秒)没有和Nacos进行信息的交互,就会将当前服务标记为不健康的状态

如果一个服务连续6次心跳(默认30秒)没有和Nacos进行信息的交互,Nacos会将这个服务从注册列表中剔除

这些时间都是可以通过配置修改的

Nacos实例类型分类

实际上Nacos的服务类型还有分类

  • 临时实例(默认)

  • 持久化实例(永久实例)

默认每个服务都是临时实例, 如果想标记一个服务为永久实例

cloud:nacos:discovery:# ephemeral设置当前项目启动时注册到nacos的类型 true(默认):临时实例 false:永久实例ephemeral: false 

持久化实例启动时向nacos注册,nacos会对这个实例进行持久化处理

心跳包的规则和临时实例一致,只是不会将该服务从列表中剔除

一般情况下,我们创建的服务都是临时实例

只有项目的主干业务才会设置为永久实例

微服务之注册中心Nacos相关推荐

  1. 为什么redis在陌陌上使用的这么广泛?当NoSQL数据库,微服务的注册中心,RPC的调用协议都能用

    前言 说到redis,可能大家的脑海中蹦出的关键词是:NoSQL.KV.高性能.缓存等.但今天的文章从另一个角度--微服务来展开. 这篇文章的起因也是源自一次面试经历,在面试一位来自陌陌的候选人(就是 ...

  2. 微服务:注册中心的作用

    1.为什么需要服务注册中心 微服务时代的服务管理 在微服务时代,我们所有的服务都被劲量拆分成最小的粒度,原先所有的服务都在混在1个server里,现在就被按照功能或者对象拆分成N个服务模块,这样做的好 ...

  3. 布道微服务_10注册中心与RPC框架的选型

    文章目录 开源注册中心 Nacos 其他 关注的问题 高可用性 数据一致性 CAP 三者不能被同时满足 选型经验 RPC框架选型 gRPC Thrift 开源注册中心 Nacos 毫无疑问,现在就选N ...

  4. 微服务:注册中心ZooKeeper、Eureka、Consul 、Nacos对比

    前言 服务注册中心本质上是为了解耦服务提供者和服务消费者.对于任何一个微服务,原则上都应存在或者支持多个提供者,这是由微服务的分布式属性决定的.更进一步,为了支持弹性扩缩容特性,一个微服务的提供者的数 ...

  5. .Net Core with 微服务 - Consul 注册中心

    上一次我们介绍了 Ocelot 网关的基本用法.这次我们开始介绍服务注册发现组件 Consul 的简单使用方法. 服务注册发现 首先先让我们回顾下服务注册发现的概念. 在实施微服务之后,我们的调用都变 ...

  6. .NET Core with 微服务 - Consul 配置中心

    上一次我们介绍了Elastic APM组件.这一次我们继续介绍微服务相关组件配置中心的使用方法.本来打算介绍下携程开源的重型配置中心框架 apollo 但是体系实在是太过于庞大,还是让我爱不起来.因为 ...

  7. 微服务(四)—— Nacos注册中心

    Nacos注册中心 认识Nacos Nacos是阿里巴巴的产品,现在是SpringCloud中的一个组件.相比Eureka功能更加丰富. 下载Nacos 去Nacos官网,进入git,下载所需版本na ...

  8. 微服务笔记:第一章_微服务简介|Eureka注册中心|Nacos注册中心|Nacos配置管理|Feign|Gateway服务网关

    微服务笔记:第一章_微服务简介|Eureka注册中心|Nacos注册中心|Nacos配置管理|Feign|Gateway服务网关 1. 微服务简介 1.1 服务架构演变 1.2 SpringCloud ...

  9. 微服务系列之ZooKeeper注册中心和Nacos注册中心Nacos和Zookeeper对比

    一.ZooKeeper注册中心 Zookeeper 是 Apache Hadoop 的子项目,是一个树型的目录服务,支持变更推送,适合作为 Dubbo 服务的注册中心,工业强度较高,可用于生产环境,推 ...

最新文章

  1. OpenAI与GitHub联手推出AI代码生成工具,比GPT-3更强大
  2. [转载] Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结
  3. vc采集网页内指定frame框架下所有元素-再升级版
  4. rg1 蓝光危害rg0_LED(护眼)台灯|蓝光那些事
  5. Unity3D GUI学习之GUILayout控件及使用
  6. wireshark 抓包iphone 4g_比4G下续航短2小时,苹果回应iPhone12用5G耗电快:与运营商一道做更多优化工作...
  7. 160 - 11 Andrnalin.4
  8. flash 火狐总是崩溃_win10系统火狐flash插件总是崩溃的解决方法
  9. Kubernetes 1.13 版本发布:Kubeadm简化群集管理、容器存储接口(CSI)和CoreDNS作为默认DNS现已普遍可用
  10. Auto.js 全命令整理(二) 对应用命令专题
  11. 解决cxgrid主从表数据显示不全的问题
  12. MATLAB: 你不知道的12个基础知识
  13. ROS系统学习8---节点间的内存共享(初级篇)
  14. Axure RP 9.0.0.3687 正式版
  15. java毕业设计——基于java+Java3D的网络三维技术设计与实现(毕业论文+程序源码)——三维技术
  16. 批量合并工作簿,包含三种合并方式,Excel技能演示
  17. matlab 取虚数单位,四元数解算姿态Matlab程序代码
  18. 最新emlog5.3.1系统YiT模板源码
  19. java 最小公倍数_Java求最大公约数和最小公倍数
  20. 经济学计算机会成本 会计成本的案例题,案例4:利润在经济学家与会计师眼中的是不同的...

热门文章

  1. 网站SEO构建内链的三种方法,帮你快速收录
  2. 数据库:行存储、列存储 利弊分析
  3. 小晴天老师系列——可恶的墨水瓶(floodfill)
  4. 向Windows Phone 7手机部署应用程序
  5. %JAVA_HOME% bin,添加 Path 变量,变量值 :%JAVA_HOME%\\bin;%JAVA_HOME%\\ jre
  6. 低预算选购中高配车 海马M3 1.5L一个不错的选择
  7. LabVIEW下拉列表和枚举控件
  8. 在播音主持的面试中向老师问好会起到哪些作用
  9. Mybatis值trim标签
  10. windows10 chrome 安装crx插件