微服务框架
【SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式,系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】
SpringCloud微服务架构
文章目录
- 微服务框架
- SpringCloud微服务架构
- 5 Nacos
- 5.7 Nacos 与 Eureka 的对比
- 5.7.1 Nacos 注册中心细节分析
- 5.7.2 临时实例和非临时实例
- 5.7.3 总结
5 Nacos
5.7 Nacos 与 Eureka 的对比
5.7.1 Nacos 注册中心细节分析
【临时实例】
查看Nacos 控制台
即默认值就是true,默认情况下,所有的 实例都是临时实例。
【临时实例采用心跳监测,非临时实例是Nacos 主动询问】
【如果非临时实例挂了,Nacos 不会将其剔除,它只会说它不健康了,等着它恢复健康】
【如果临时实例挂了,Nacos 直接就剔除干掉】
5.7.2 临时实例和非临时实例
服务注册到Nacos时,可以选择注册为临时或非临时实例,通过下面的配置来设置:
临时实例宕机时,会从nacos的服务列表中剔除,而非临时实例则不会
【直接开干】
可以看到,默认值是true,即临时实例
现在先把order 服务停掉
OK, 看看Nacos 控制台
嗯,已经没了【因为我们刚刚配置了还没重启过, 停掉的时候它还是一个临时实例】
再次启动
OK, 查看Nacos 控制台
可以看到,这就成了一个非临时实例了
OK,现在我们再次停掉它
再次查看Nacos 控制台
可以看到Nacos 并没有干掉它,只是变成不健康的实例了
现在我又重启它
查看控制台
它就恢复了
OK,大概就是这样 了
5.7.3 总结
-
Nacos与eureka的共同点
- ①都支持服务注册和服务拉取
- ②都支持服务提供者心跳方式做健康检测
-
Nacos与Eureka的区别
- ①Nacos支持服务端主动检测提供者状态:临时实例采用心跳模式,非临时实例采用主动检测模式
- ②临时实例心跳不正常会被剔除,非临时实例则不会被剔除
- ③Nacos支持服务列表变更的消息推送模式,服务列表更新更及时
- ④Nacos集群默认采用AP方式,当集群中存在非临时实例时,采用CP模式;Eureka采用AP方式