Nacos心跳机制
Nacos内部注册的服务分为两大类:可以通过.yml中设置ephemeral属性来确定服务为临时或永久。例如:临时实例和永久实力的区别:默认情况下,启动服务后,每隔5秒会向nacos发送一个"心跳包",这个心跳包中包含了当前服务的基本信息Nacos收到这个"心跳包"如果发现这个服务的信息不在注册列表中,就进行注册,如果这个服务的信息在注册列表中就表明这个服务还是健康的如果Nacos15秒内没接收到
·
#Nacos心跳机制
Nacos内部注册的服务分为两大类:
- 临时实例(默认)
- 持久化实例
可以通过.yml中设置ephemeral属性来确定服务为临时或永久。例如:
spring:
cloud:
nacos:
discovery:
# 定义nacos运行的路径
server-addr: localhost:8848
# ephemeral 设置当前项目启动时注册到nacos的类型true(默认):临时实例false:永久化实例
ephemeral: true
临时实例和永久实力的区别:
临时实例
默认情况下,启动服务后,每隔5秒会向nacos发送一个"心跳包",这个心跳包中包含了当前服务的基本信息
Nacos收到这个"心跳包"如果发现这个服务的信息不在注册列表中,就进行注册,如果这个服务的信息在注册列表中就表明这个服务还是健康的
如果Nacos15秒内没接收到某个服务的心跳包,Nacos会将这个服务标记为不健康的状态
如果30秒内没有接收到这个服务的心跳包,Nacos会将这个服务从注册列表中剔除
这些时间都是可以通过配置修改的
持久化实例(永久实例)
持久化实例启动时向nacos注册,nacos会对这个实例进行持久化处理
心跳包的规则和临时实例一致,只是不会将该服务从列表中剔除
各类型使用时机
一般情况下,我们创建的服务都是临时实例
只有项目的主干业务才会设置为永久实例
更多推荐
已为社区贡献2条内容
所有评论(0)