一、nacos管理界面详细介绍
nacos服务管理界面如图所示:
1、创建服务和隐藏空服务
我们可以看到在界面上有个隐藏空服务
的按钮,我们打开该按钮之后,服务列表并没有发生变化,这个按钮有啥用呢?
该按钮的作用就是隐藏空的服务,空的服务就是指没有实例
的服务,即实例数为0。我们在客户端注册进来的服务都不是空服务,所以就不会被隐藏。
那怎么创建空服务呢?我们可以点击右侧的 创建服务
那妞,创建一个没有任何实例的服务,如图:
关闭隐藏空服务之后,这个空服务就会显示,如图:
那这个空服务有什么用呢?没有具体的作用,唯一的作用就是相当于在服务列表占个座,表明这里有个这种类型的服务待注册进来。
2、命名空间与分组名称
命名空间
这个名词听起来是和服务的名称有关的,实则不是。命名空间是用来对服务进行分组的,比如不同的项目的服务在同一个命名空间中。分组名称
也是用来对服务进行分组的。
那个两个有什么区别吗?有的,区别就是:命名空间是一个大方向,分组名称比较细化。意思就是说,一个命名空间代表一个项目,一个分组名称代表项目中的不同模块或开发环境。总的来说就是命名空间是大分组,分组名称在大分组中进行小分组。
我们可以在命名空间菜单里对命名空间进行管理,如图:
3、保护阈值
保护阈值
和雪崩保护有关,设置保护阈值就是对雪崩保护进行设置。保护阈值默认是0
,也就是不设置雪崩保护。保护阈值的值是0~1
之间的值,也就是按百分比进行设置。
在说保护阈值的作用的时候,先说一下临时实例
和永久实例
之间的区别。默认是临时实例,当服务宕机之后,临时实例就会被从nacos删掉(保留30秒),临时实例如图:
而永久实例就是,当服务宕机之后,实例也不会被nacos删掉,会一直保留,如图:
我们把服务停掉,实例也不会消失,如图:
临时实例变成永久实例需要在配置文件中配置一句话,如下:
spring:
cloud:
nacos:
discovery:
ephemeral: false # 设置永久实例,默认是临时实例,永久实例即使服务宕机,这个实例也不会被删除,而临时实例是会被删除掉的。
进入正题:因为我们设置了永久实例,现在nacos里面就有健康实例和不健康实例。我们保护阈值设置为0.5的话,意味着当 健康实例数/总实例数<0.5
的时候,nacos就会把不健康的实例也拿来一起使用,防止服务雪崩。
不过我们一般不使用nacos的雪崩保护机制,我们会用sentiel组件来实现雪崩保护。
4、权重
权重的作用是用来配合负载均衡的,权重大的被调用的次数就越多,反之就越少。
5、订阅者列表
订阅者列表可以查看有哪些服务调用过当前服务,如图:
二、注册中心配置详解
其他一下配置项如图所示: