SpringCloud(四)Eureka自我保护机制
Eureka自我保护机制
- 默认情况下,EurekaClient会定时向EurekaServer端发送心跳,如果EurekaServer在一定时间内没有收到EurekaClient发送的心跳,便会把该实例从注册服务列表中剔除(默认是90秒),但是在短时间内丢失大量的实例心跳,这时候EurekaServer会开启自我保护机制,Eureka不会踢出该服务。
- 自我保护模式可以让集群更加健壮,但是我们在开发测试阶段,需要频繁地重启发布,如果触发了保护机制,则旧的服务实例没有被删除,这时请求有可能跑到旧的实例中,而该实例已经关闭了,这就导致请求错误,影响开发测试
- 图中我们可以看到 shopping-member做了集群有两个节点
- Renews threshold:Eureka Server 期望每分钟收到客户端实例续约的总数。
- Renews (last min):Eureka Server 最后 1 分钟收到客户端实例续约的总数。
当后者(最后一分钟收到的心跳数)小于前者(心跳阈值)的时候,触发保护机制,会出现红色的警告
紧急!EUREKA可能错误地声明实例已经启动,而实际上它们并没有。续订低于阈值,因此不会为了安全而终止实例
关闭自我保护机制就会出现图一中的提示
THE SELF PRESERVATION MODE IS TURNED OFF.THIS MAY NOT PROTECT INSTANCE EXPIRY IN CASE OF NETWORK/OTHER PROBLEMS.
- 自我保存模式是关闭的。当网络或其他问题发生时,它可能无法保护实例过期。
关闭服务保护机制
- 在开发中因为会频繁重启服务,所以建议关闭自我保护机制,但是在生产是不推荐这样做的
配置Eureka服务端
###服务端口号
server:port: 8100
###eureka 基本信息配置
spring:application:name: eureka-server
eureka:instance:###注册到eurekaip地址hostname: 127.0.0.1client:serviceUrl:defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/###因为自己是为注册中心,不需要自己注册自己register-with-eureka: false###因为自己是为注册中心,不需要检索服务fetch-registry: falseserver:# 测试时关闭自我保护机制,保证不可用服务及时踢出enable-self-preservation: false# 每隔两秒检测一次eviction-interval-timer-in-ms: 2000
配置Eureka客户端
server:port: 9100
spring:application:name: shopping-member
eureka:client:service-url:defaultZone: http://127.0.0.1:8100//eurekaregister-with-eureka: truefetch-registry: trueinstance:###Eureka客户端向服务端发送心跳的时间间隔,单位为秒(客户端告诉服务端自己会按照该规则)lease-renewal-interval-in-seconds: 1####Eureka服务端在收到最后一次心跳之后等待的时间上限,单位为秒,超过则剔除(客户端告诉服务端按照此规则等待自己)lease-expiration-duration-in-seconds: 2
这样在开发环境中我们就能及时剔除死掉的服务
SpringCloud(四)Eureka自我保护机制相关推荐
- SpringCloud Eureka自我保护机制
转载自 SpringCloud Eureka自我保护机制 自我保护背景 首先对Eureka注册中心需要了解的是Eureka各个节点都是平等的,没有ZK中角色的概念, 即使N-1个节点挂掉也不会影响其他 ...
- SpringCloud Eureka自我保护机制介绍及配置
概述:谈到Eureka的自我保护机制时,我们需要知道其中一些客户端和服务端的概念.比如客户端的心跳发送时间间隔.服务续约时间:服务端的服务剔除时间间隔.阈值更新时间间隔. 客户端心跳发送时间间隔(eu ...
- Eureka自我保护机制
本文来说下Eureka自我保护机制 文章目录 为什么要有自我保护机制 重要变量 变量更新 Eureka-Server初始化 cancle主动下线 客户端注册 定时器 自我保护机制 开启 解除 本文小结 ...
- eureka自我保护时间_Spring Cloud Eureka 自我保护机制
自我保护出现 首先对Eureka注册中心需要了解的是Eureka各个节点都是平等的,没有ZK中角色的概念, 即使N-1个节点挂掉也不会影响其他节点的正常运行. 默认情况下,如果Eureka Serve ...
- Spring Cloud Eureka 自我保护机制
Spring Cloud Eureka 自我保护机制 Eureka Server 在运行期间会去统计心跳失败比例在 15 分钟之内是否低于 85%,如果低于 85%,Eureka Server 会将这 ...
- eureka自我保护时间_SpringCloud Eureka自我保护机制
自我保护背景 首先对Eureka注册中心需要了解的是Eureka各个节点都是平等的,没有ZK中角色的概念, 即使N-1个节点挂掉也不会影响其他节点的正常运行. 默认情况下,如果Eureka Serve ...
- eureka:自我保护机制_对自我怀疑的开发人员:您足够好吗?
eureka:自我保护机制 by Sihui Huang 黄思慧 对自我怀疑的开发人员:您足够好吗? (To self-doubting developers: are you good enough ...
- 深入理解Eureka 自我保护机制(五)
对自我保护的理解: 自我保护的作用是保证服务的稳定性,也就是怕过多的服务心跳失败,是Eureka服务端的问题,而不是客户端的问题,所以为了避免将正常的服务剔除,所以加了保护机制,当然保护机制的话也有可 ...
- Spring Cloud Eureka 自我保护机制(EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY)
在本地启动一个Euraka-Server服务(服务注册中心)和一个Euraka-Client服务(服务注册者-应用服务)两个服务.过了一会儿后,在Euraka-Server界面显示:EMERGENCY ...
- 天荒地老修仙功-第六部第二篇:Spring Cloud Eureka自我保护机制
Eureka Server 在运行期间会去统计心跳失败比例在 15 分钟之内是否低于 85%,如果低于 85%,Eureka Server 会将这些实例保护起来,让这些实例不会过期,但是在保护期内如果 ...
最新文章
- [BZOJ 3942] [Usaco2015 Feb] Censoring 【KMP】
- 用户Session相关模块重构
- swagger接口文档使用
- IIS启用页面Gzip压缩实现说明
- (转)Windows系统、Linux系统 和 Mac OS操作系统 历史由来 与 区别?
- idea无法导入主题jar包_总结IDEA开发的26个常用设置
- 写论文的第三天 自建zookeeper集群
- PL/SQL中,declare定义变量和variable定义变量的区别?
- 今天心情好,发首我喜欢的歌---天黑黑
- 软交所--微软将对IE浏览器进行关键性安全更新
- php smarty 手册下载,smarty教程
- Tableau 10.5 安装教程
- 课程设计 天气预报数据可视化开发
- 什么是堆栈,堆和栈到底是不是一个概念
- 一个矩阵与单位矩阵相乘等于本身吗?并且符合交换律吗?
- Bypass-分流抢票
- JWT授权为啥要在 Authorization标头里加个Bearer 呢
- CSS中的nth-child()属性
- react 富文本编辑器react-quill
- 渗透测试——信息收集