前言
Nacos (Dynamic Naming and Configuration Service)是阿⾥巴巴开源的⼀个针对微服务架构中服务发现、配置管理和服务管理平台。
Nacos就是注册中心+配置中心的组合(Nacos=Eureka+Config+Bus)
一、Nacos功能特性
- 服务发现与健康检查
- 动态配置管理
- 动态DNS服务
- 服务和元数据管理(管理平台的⻆度,nacos也有⼀个ui⻚⾯,可以看到注册的服务及其实例信息(元数据信息)等),动态的服务权重调整、动态服务优雅下线,都可以去做。
二、Nacos管理界面
访问nacos管理界面:http://127.0.0.1:8848/nacos/#/login,默认端⼝8848,账号和密码 nacos/nacos。
保护阈值:可以设置为0-1之间的浮点数,它其实是⼀个比例值(当前服务健康实例数/当前服务总实例数)
nacos默认会返回健康的服务实例,当高并发场景下,假如有10个实例,9个不健康了,如果nacos只返回剩下地端1个健康的实例,流量太大扛不住就会造成服务雪崩。
保护阈值的作用就是在被触发时,nacos会返回所有的实例信息,消费者访问当不健康的实例会失,这样比服务雪崩要好。
三、Nacos 数据模型
Namespace命名空间、Group分组、集群这些都是为了进行归类管理,把服务和配置文件进行归类,归类之后就可以实现⼀定的效果。
- Namespace:命名空间,对不同的环境进行隔离,比如隔离开发环境、测试环境和⽣产环境
- Group:分组,将若干个服务或者若干个配置集归为⼀组,通常习惯⼀个系统归为⼀个组
- Service:某⼀个服务,比如简历微服务
- DataId:⼀个配置⽂件
Namespace + Group + Service 锁定一个服务
Namespace + Group + DataId 锁定一个配置文件
概念 | 描述 |
---|---|
Namespace | 代表不同的环境,如开发dev、测试test、生产环境prod |
Group | 代表某项目 |
Service | 某个项目中具体xxx服务 |
DataId | 某个项目中具体的xxx配置⽂件 |