什么是Nacos?Nacos注册配置中心介绍

一、什么是Nacos

英文全称Dynamic Naming and Configuration Service,Na为naming/nameServer即注册中心,co为configuration即注册中心,service是指该注册/配置中心都是以服务为核心。服务在nacos是一等公民

二、Nacos原理

简单介绍
                                             nacos简单介绍


Nacos注册中心分为server与client,server采用Java编写,为client提供注册发现服务与配置服务。而client可以用多语言实现,client与微服务嵌套在一起,nacos提供sdk和openApi,如果没有sdk也可以根据openApi手动写服务注册与发现和配置拉取的逻辑

img
                                             nacosnacos服务领域模型


Nacos服务领域模型主要分为命名空间、集群、服务。在下图的分级存储模型可以看到,在服务级别,保存了健康检查开关、元数据、路由机制、保护阈值等设置,而集群保存了健康检查模式、元数据、同步机制等数据,实例保存了该实例的ip、端口、权重、健康检查状态、下线状态、元数据、响应时间。这些数据的作用会在第三章讲到

img

2.1注册中心原理

img

                                             nacos服务注册原理


服务注册方法:以Java nacos client v1.0.1 为例子,服务注册的策略的是每5秒向nacos server发送一次心跳,心跳带上了服务名,服务ip,服务端口等信息。同时 nacos server也会向client 主动发起健康检查,支持tcp/http检查。如果15秒内无心跳且健康检查失败则认为实例不健康,如果30秒内健康检查失败则剔除实例。

2.2 配置中心原理

img

三、 Nacos使用方法

3.1创建命名空间

不同的命名空间逻辑上是隔离的,不特殊设置的情况下,服务不会跨命名空间请求,命名空间主要的作用是区分服务使用的范围,比如开发、测试、生产、灰度可以分别设置四个命名空间来互相隔离。

img

                                             nacos新建命名空间


如图所示,在控制台的 按钮可以创建新的命名空间,命名空间创建后,会在列表显示,这个ID后面会用在服务的配置文件中

3.2在服务上配置注册、配置中心

以springcloud为例,首先用maven导入nacos clinet的依赖:

     <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId><version>0.2.1.RELEASE</version><exclusions><exclusion><groupId>com.alibaba.nacos</groupId><artifactId>nacos-client</artifactId></exclusion></exclusions></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId><version>0.2.1.RELEASE</version><exclusions><exclusion><groupId>com.alibaba.nacos</groupId><artifactId>nacos-client</artifactId></exclusion></exclusions></dependency>

先导入springcloud的alibaba-nacos-config和alibaba-nacos-discovery两个依赖,这两个依赖是用于nacos clinet与cloud结合的工具,0.2.x对应springboot 2.x.x ,0.1.x对应springboot 1.x.x。这两个组件可以和各种版本的nacos-client结合。把其中的nacos-clinet依赖给排除,引入想要引入的nacosclinet版本,如下:

   <!-- https://mvnrepository.com/artifact/com.alibaba.nacos/nacos-client --><dependency><groupId>com.alibaba.nacos</groupId><artifactId>nacos-client</artifactId><version>1.0.1</version></dependency>

在bootstrap.properties上添加配置中心的配置

spring.cloud.nacos.config.server-addr=nacos.e.189.cn:80
spring.cloud.nacos.config.namespace=命名空间id

在application-xxx.properties新增如下配置

spring.cloud.nacos.discovery.server-addr=nacos.e.189.cn:80
spring.cloud.nacos.discovery.namespace=命名空间id

如果springboot启动类没有@EnableDiscover注解则加上
完成如上更改,即可使用Nacos注册/配置服务

3.3服务间使用feign调用

演示:
使用Feign、Ribbon均可,在这不做过多介绍

3.4通过配置更改动态刷新参数

普通application参数在配置中心直接配置皆可,如果需要可以动态刷新的配置,需要在相应类上加上@RefreshScope注解,示例如下,当在nacos配置中心更改配置后,方法getId的值也会刷新。

@RefreshScope
public class IdEntity {@Value("${id}")private int id;public int getId(){return this.id;}
}

配置中心参数修改/设置
如下两张图:在nacos控制台的配置管理-配置列表中顶部选择相应的命名空间,点击列表右上角的加号新增配置,Data ID 为 项目名-{spring.profiles.active}.properties,Group如果在bootstrap.properties中不指定则填默认的DEFAULT_GROUP,描述写该配置的描述,配置内容填写Properties格式或者Yaml格式。

img

                                             nacosnacos控制台-配置管理


img

                                             nacosnacos控制台-新建配置


3.5 nacos其他功能使用与介绍

控制台手动上下线实例

在控制台的服务管理-服务列表选择一个服务点击详情,在下方的集群列表可以看到有上线/下线按钮,点击即可以对该实例执行上线/下线操作,下线后的实例不会被请求

img

                                             nacos控制台手动上下线


配置实例权重

可以通过手动配置权重来控制流量,当一个集群内两个实例,权重越高,到达该实例的请求比例越多。

img

权重的初始值是1

配置保护阈值

保护阈值的范围是0~1
服务的健康比例=服务的健康实例/总实例个数
当服务健康比例<=保护阈值时候,无论实例健不健康都会返回给调用方
当服务健康比例>保护阈值的时候,只会返回健康实例给调用方
服务管理-服务列表选择一个服务点击详情可以配置

img

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/556712.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

矩阵 计算机应用,《计算机视觉算法:基于OpenCV的计算机应用开发》 —3.3 元素级矩阵操作...

3.3 元素级矩阵操作基于元素的(元素级)矩阵操作是计算机视觉中的一类数学函数和算法&#xff0c;它处理矩阵的各个元素&#xff0c;或者说&#xff0c;图像中的每个像素。注意基于元素的操作可以并行化&#xff0c;因此矩阵元素的处理顺序不重要。这个特点是本节函数和算法与本…

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

一、ZooKeeper注册中心 Zookeeper 是 Apache Hadoop 的子项目&#xff0c;是一个树型的目录服务&#xff0c;支持变更推送&#xff0c;适合作为 Dubbo 服务的注册中心&#xff0c;工业强度较高&#xff0c;可用于生产环境&#xff0c;推荐使用。 流程说明&#xff1a; 服务提…

2018美国大学计算机科学,美国大学计算机2018最新排名

近些年&#xff0c;除了商科之外&#xff0c;被中国留学生追捧的就是计算机专业&#xff0c;据统计显示&#xff0c;计算机科学是就业市场需求最多的专业之一。美国的计算机技术在世界一直位居前列&#xff0c;因此&#xff0c;很多留学生前往美国深造计算机科学专业&#xff0…

计算机知识探索怎么写,计算机基础知识及探索.doc

PAGEPAGE 23HYPERLINK "/ASPX/602009818/JournalContent/1325923866.aspx"计算机基础知识参考试题及答案解析一、单选题1&#xff0e;1946年诞生的世界上公认的第一台电子计算机是( )。A)UNIVAC&#xff0d;I B)EDVAC C)ENIAC D)IBM650【答案】C)【解析】1946年2月15…

springboot配置跨mapper.xml的全局变量

springboot配置跨mapper.xml的全局变量 有这样的需求&#xff0c;mybatis框架的mapper.xml&#xff0c;即映射文件里&#xff0c;如果需要配置一个全局变量&#xff0c;然后&#xff0c;在所有的mapper.xml里都能拿到使用。 这需求也不苛刻吧~ 后来查了下&#xff0c;发现对…

计算机公共基础知识论文,计算机等级考试二级公共基础知识汇总.doc

计算机等级考试二级公共基础知识汇总.doc计算机等级考试二级公共基础知识第1章 数据结构与算法1.1 算法1.1.1 算法的基本概念算法是指对解题方案的准确而完整的描述。简单地说&#xff0c;就是解决问题的操作步骤。值得注意的是&#xff0c;算法不等于数学上的计算方法&#xf…

springboot项目中关于时间类型转换的格式问题

常常项目里转时间类型出现如下错误。 Can not deserialize value of type java.util.Date from String \"2021-10-24 12:12:12\" : not a valid representation(error: Failed to parse Date value 2018-10-24 12:12:12: Can not parse date\"2021-10-24 12:12…

如何用计算机计算胸围,文胸尺码计算器

文胸尺码计算器也称胸罩尺寸计算器&#xff0c;是根据国际标准制定的文胸尺寸、胸罩尺寸表计算您的文胸尺码。胸围尺寸测量方法如下&#xff1a;水平围绕胸部最高点(乳头)一周的长度&#xff0c;即为您的胸上围尺寸&#xff0c;如测量尺寸时遇到小数&#xff0c;测量时建议采用…

SpringBoot升级到2.0后默认时间格式变化_springboot接收date类型参数

springboot1.x时&#xff0c;请求返回默认将Date类型转换成时间戳&#xff1a; createTime: 1544693261000然而在升级到springboot2.0后&#xff0c;默认返回的时间格式变成了UTC字符串&#xff1a; createTime: "2021-12-13T09:27:41.0000000"对于网页端或安卓端&…

与虚拟现实技术相关联的计算机技术,虚拟现实技术与其他技术的关系是什么?-VR-形象思维VR...

1.虚拟现实技术与可视化仿真技术的关系虚拟现实与可视化仿真技术有着密切的联系&#xff1a;两者都被视为现代图形学的应用主流和技术生长点。可视化仿真着重于将计算机产生的大量数据转化为图形&#xff0c;化抽象思维为形象思维&#xff0c;而虚拟现实则致力于提供和谐的人机…

org.springframework.web.servlet.handler.AbstractHandlerExceptionResolver.logException Resolved

场景&#xff1a; spring项目中无法访问到对应controller&#xff0c;查看日志&#xff0c;没有报错&#xff0c;只有warnring&#xff1a; org.springframework.web.servlet.handler.AbstractHandlerExceptionResolver.logException Resolved [org.springframework.web.meth…

带桭字的名字_男孩带官运大气的名字有气魄有能力-可爱点

一个好的名字传承了祖辈的血脉烙印&#xff0c;寄托了父母的满心希望和浓重的情意&#xff0c;取一个官运财运旺的名字&#xff0c;相信能让男孩更加充满自信和动力&#xff0c;这里整理了男孩带官运大气的名字的内容&#xff0c;来看看有没有给你们带来灵感呢。1、景辉“景”字…

无法在计算机上创建文件夹iscsi,ISCSI连接后磁盘无法读写问题求解决

ISCSI target&#xff1a;windows 2000 pro操作系统ISCSI initiator&#xff1a;SUSE linux 9.0SUSE LINUX 9.0配置文件&#xff1a;iscsi.conf# You may configure CHAP authentication settings that will apply to every# target discovered at a particular address by add…

springboot基于mybatis扫描jar包中的controller、service、dao、xml

springboot基于mybatis扫描jar包中的controller、service、dao、xml 最近有这样的需求&#xff0c;是将某个业务模块接口&#xff0c;比如新闻的接口模块 作为一个公共固定的模块&#xff0c;整个包括controller 、model 、mapper 、mapper .xml &#xff0c;都通过jar 包的形…

java 后台和前端的消息提醒_滴滴Java后台3面题目:网络+内存溢出+各种锁+高性能+消息队列...

一面自我介绍项目介绍JVM类加载机制java的垃圾回收器都有哪些&#xff0c;说下g1的应用场景&#xff0c;平时你是如何搭配使用垃圾回收器的。红黑树的设计经常使用的设计模式&#xff1f;以及UML设计&#xff1f;hashmap实现的的数据结构是什么样的&#xff1f;当hash冲突过多时…

springboot 配置多个请求服务代理

springboot 配置服务代理 有时候&#xff0c;我们可能有下边这样的需求&#xff1a; 即&#xff0c;针对于分布式服务&#xff0c;我们会有多种业务接口服务&#xff0c;但是服务器上可能只要求开放一个服务的端口&#xff0c;比如上图的restA项目端口是对外开放的&#xff0…

计算机控制pid控制实验,计算机控制实验三数字PID调节器算法的研究

计算机控制技术实验报告学院&#xff1a;********** 班级&#xff1a;********** 姓名&#xff1a;****** 学号&#xff1a;**********实验三 数字PID调节器算法的研究实验项目名称&#xff1a;数字PID调节器算法的研究 实验项目性质&#xff1a;普通所属课程名称&#xff1a;计…

主板上的jrgb接口干什么用_用思维导图,解读选配主板的过程,重点解读兼容与接口的搭配技术...

本文用思维导图&#xff0c;解读选配主板的过程&#xff0c;重点解读兼容与接口的搭配技术&#xff0c;选择了5块不同主板&#xff0c;说明主板内容。重点提示&#xff0c;主板决定一台计算机能否稳定运行。任务描述&#xff1a;重点解读兼容与接口的搭配技术,解读选配主板的过…

Linux启动Mysql

关于Linux上安装Mysql可以查看之前的博客&#xff1a;https://blog.csdn.net/qq_43842093/article/details/120401076 Linux启动Mysql 下查看mysql服务的两种方式&#xff1a; 方式一&#xff1a; [rootlocalhost bin]ps -ef|grep mysql方式二&#xff1a; [rootlocalhost…

多媒体计算机技术19秋作业1,东师多媒体计算机技术19春在线作业1【标准答案】.doc...

多媒体计算机技术19春在线作业1-0002试卷总分:100 得分:0一、 单选题 (共 30 道试题,共 60 分)1.1984年公布的音频编码标准G.721&#xff0c;它采用的是()编码。A.均匀量化B.自适应量化C.自适应差分脉冲D.线性预测2.什么时候需要使用MIDI,()   (l)想音乐质量更好时 (2)想连续…