Nacos注册中心
环境隔离 - namespace
Nacos 中服务存储和数据存储的最外层都是一个名为namespace的东西,用来做最外层隔离
- Nacos默认的命名空间:
- 创建命名空间
- 复制命名空间ID
- 启动Orderservice服务,在nacos服务列表可以看到环境隔离之后的服务
总结-Nacos环境隔离
- namespace 用来做环境隔离
- 每个namespace都是唯一id
- 不同namespace下的服务不可见
nacos注册中心细节分析
这里的临时实例和非临时实例就像非亲生和亲生孩子一样。
我们目前的服务属于临时实例,我们关闭服务看一下效果
临时实例的健康状态改变 会被直接干掉
接着我们设置当前服务不是临时实例
ephemeral: false # 是否是临时实例
启动服务,去nacos注册中心服务列表查看效果
由于他属于非临时实例,所以就算他服务崩溃,服务列表也不会把他干掉,而是等他上线
关闭服务
服务不会自动被剔除,而是等待上线,健康状态改变。
Nacos和eureka的共同点
- 都支持服务注册和服务拉取
- 都支持服务提供者心跳方式做健康检测
Nacos和eureka的区别
- Nacos支持服务端主动检测提供者状态:临时实例采用心跳模式,非临时实例采用主动检测模式
- 临时实例心跳不正常会被剔除,非临时实例则不会被剔除
- Nacos支持服务列表变更的消息推送模式,服务列表更新更及时
- Nacos集群默认采取AP方式,当集群中存在非临时实例时,采用CP模式;Eureka采用AP方式