一 Eureka的自我保护模式

进入自我保护模式最直观的体现就是Eureka Server首页的警告,如下图:

默认情况下,如果Eureka Server在一定时间内没有接收到某个微服务实例的心跳,Eureka Server将会注销该实例(默认90秒)。但是当网络分区故障发生时,微服务与Eureka Server之间无法正常通信,这就可能变得非常危险了----因为微服务本身是健康的,此时本不应该注销这个微服务。

Eureka Server通过“自我保护模式”来解决这个问题----当Eureka Server节点在短时间内丢失过多客户端时(可能发生了网络分区故障),那么这个节点就会进入自我保护模式。一旦进入该模式,Eureka Server就会保护服务注册表中的信息,不再删除服务注册表中的数据(也就是不会注销任何微服务)。当网络故障恢复后,该Eureka Server节点会自动退出自我保护模式。

自我保护模式是一种对网络异常的安全保护措施。使用自我保护模式,而已让Eureka集群更加的健壮、稳定。

在Spring Cloud中,可以使用eureka.server.enable-self-preservation=false来禁用自我保护模式

Eureka的健康检查

先看下图:

说明:在Status栏显示着UP,表示应用程序状态正常。其它取值DOWN、OUT_OF_SERVICE、UNKNOWN等,只有UP的微服务会被请求。

由于Eureka Server与Eureka Client之间使用心跳机制来确定Eureka Client的状态,默认情况下,服务器端与客户端的心跳保持正常,应用程序就会始终保持“UP”状态,所以微服务的UP并不能完全反应应用程序的状态。

Spring Boot Actuator提供了/health端点,该端点可展示应用程序的健康信息,只有将该端点中的健康状态传播到Eureka Server就可以了,实现这点很简单,只需为微服务配置如下内容:

#开启健康检查(需要spring-boot-starter-actuator依赖)
eureka.client.healthcheck.enabled = true

如果需要更细粒度健康检查,可实现com.netflix.appinfo.HealthCheckHandler接口 。 EurekaHealthCheckHandler 已实现了该接口

转载于:https://www.cnblogs.com/xingzc/p/7543764.html

Eureka的自我保护模式相关推荐

  1. 简述eureka的自我保护模式? 如何配置其自我保护模式

    一 Eureka的自我保护模式 进入自我保护模式最直观的体现就是Eureka Server首页的警告,如下图: 技术分享 默认情况下,如果Eureka Server在一定时间内没有接收到某个微服务实例 ...

  2. 理解Eureka的自我保护模式

    本文我们来探讨Eureka的自我保护模式.自我保护模式是Eureka的重要特性.进入自我保护模式最直观的体现,是Eureka Server首页输出的警告,如图4-10所示. 图4-10 Eureka ...

  3. 谈谈Eureka的自我保护模式

    Eureka 一般是springcloud 的第一个要学习使用的模块. 这个模块的特点是几乎没有代码,上来就运行,然后没有代码并不意味着开发者就很轻松, 很多东西看上去简单,背后会有很多的问题 之前出 ...

  4. 关闭 Eureka 自我保护模式

    Tips:生产环境中不建议关闭 Eureka 的自我保护模式 什么是保护模式   保护模式,主要用于一组客户端 和 Eureka Server 之间存在网络分区场景下的保护.一旦进入保护模式,Eure ...

  5. Eureka自我保护模式——难点重点

    一.开启Eureka自我保护模式 访问Eureka主页时,如果看到这样一段大红色的句子: EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ...

  6. SpringCloud禁用Eureka自我保护模式

    一.原因 默认情况下,如果EurekaServer在一定时间内没有接收到某个微服务实例的心跳,EurekaServer将会注销该实例(默认90秒).但是当网络分区故障发生时,微服务与EurekaSer ...

  7. eureka自我保护模式

    之前我们提到Eureka设计哲学采用的是AP原则,也就是宁可保留错误的服务注册信息,也不盲目注销任何可能健康的服务实例.因此,在Eureka中有一个自我保护模式,并默认开启.在自我保护模式下,Eure ...

  8. Eureka的自我保护机制与如何禁用

    场景 SpringCloud中集成Eureka实现服务注册(单机Eureka构建): SpringCloud中集成Eureka实现服务注册(单机Eureka构建)_霸道流氓气质的博客-CSDN博客 在 ...

  9. springCloud-Eureka自我保护模式

    什么是自我保护模式?    默认情况下,如果EurekaServer在一定时间内没有接收到某个微服务实例的心跳,EurekaServer将会注销该实例(默认90秒).但是当网络分区故障发生时,微服务与 ...

  10. 《SpringCloud超级入门》Eureka自我保护模式和InstanceID的配置《十四》

    关闭自我保护 保护模式主要在一组客户端和 Eureka Server 之间存在网络分区场景时使用.一旦进入保护模式,Eureka Server 将会尝试保护其服务的注册表中的信息,不再删除服务注册表中 ...

最新文章

  1. Delphi中调用API函数经验点滴(二)
  2. Java学习笔记_多态/内部类
  3. ajax设置自定义请求头信息
  4. MyCat分布式数据库集群架构工作笔记0021---高可用_单表存储千万级_海量存储_水平分表全局表
  5. Android 视频播放器 (二):使用MediaPlayer播放视频
  6. 遗传算法MATLAB工具箱的下载与安装
  7. 网络安全 —— 对称与非对称加密
  8. 开源代码MyCommons
  9. CSS控制显示超出部分,用省略号显示
  10. 理发店收银系统php,理发店收银系统优缺点
  11. jedate选择一年范围日期插件
  12. AI头发笔刷_笔刷总是不够用?我们整理精选了1000款笔刷给你
  13. stream从list实体类筛选出符合条件的单个实体类
  14. Python与数学——使用Processing绘制高次方程图像
  15. android加法计算器代码,Android实现简单加法计算器
  16. Python3 网络爬虫入门与实战
  17. 电脑上的以太网连接,本地连接,宽带连接,无线WLAN连接的区别(超详细)--转载
  18. 手游爆发“平台战”启幕
  19. oracle中loder,Oracle Sql Loader的学习使用
  20. spss运行脚本 linux,从外部Python脚本运行SPSS会话操作

热门文章

  1. 分布有限传输速度高的计算机网络,第5章 计算机网络基础.ppt
  2. php之通过curl模仿表单提交(get,post)抓取其他页面的内容
  3. 二十四、Java集合框架(二)
  4. PTA甲级15进制转换
  5. 阿里云ddns解决动态IP问题
  6. ELKF(Elasticsearch+Logstash+ Kibana+ Filebeat) 部署
  7. Win 10 下载与安装 Oracle 12c 详细图解 与 Oracle 12c 卸载
  8. oracle去除逗号函数,oracle逗号分隔函数
  9. spring jpa查询视图
  10. Gym - 100623J Just Too Lucky (数位dp)