您的位置:首页 > 编程语言 > Java开发

二、SpringCloud开发环境下几个时间配置问题

2019-06-29 15:57 375 查看

一、服务提供者

eureka:
client:
service-url:
defaultZone: http://localhost:10086/eureka
register-with-eureka: true #服务启动时是否注册到Eureka Server,默认为true
fetch-registry: true #是否从Eureka Server获取注册信息,默认为true
instance:
lease-renewal-interval-in-seconds: 5 #续约时间,每5s给注册中心发一次
lease-expiration-duration-in-seconds: 15 #过期时间

在注册服务完成以后,服务提供者会维持一个心跳(定时向EurekaServer发起Rest请求),告诉EurekaServer:“我还活着”,这个我们称为服务的续约。默认情况下每个30秒服务会向注册中心发送一次心跳,证明自己还活着。过期时间为90秒,如果超过90秒没有续约则EurekaServer就会认为该服务宕机,会从服务列表中移除。开发环境下可以适当改小,方便测试。

二、服务消费者

eureka:
client:
service-url:
defaultZone: http://localhost:10086/eureka
fetch-registry: true #拉取Eureka Server服务的列表只读备份,然后缓存在本地
registry-fetch-interval-seconds: 5 #每隔5s重新拉取并更新数据,生产环境30s

三、Eureka注册中心

eureka:
client:
service-url:
defaultZone: http://localhost:10086/eureka #Eureka服务地址
server:
enable-self-preservation: false # 关闭自我保护模式
eviction-interval-timer-in-ms: 1000 # 失效剔除扫描间隔时间

失效剔除:当一个服务出现异常不能正常工作时,Eureka Server需要将这样的服务剔除出服务列表。因此它会开启一个定时任务,每隔60秒对所有失效的服务(超过90秒未续约)进行剔除。开发环境下修改为一秒后可以通过日志看到每隔一秒就执行一次剔除任务

自我保护:当服务失效时,并不是被立即剔除,有可能只是网络故障等,这是Eureka会把当前服务实例的注册信息保护起来,不预剔除,保证大多数服务依然可用。当关闭自我保护后,服务失效就立马剔除。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: