Eureka客户试图在同一区域与Eureka服务器进行对话。
如果存在与服务器对话的问题,或者服务器在同一区域中不存在,则客户端会在其他区域的服务器上失败。一旦服务器开始接收流量,在服务器上执行的所有操作都将被复制到服务器所知道的所有节点节点。
如果某个操作由于某种原因失败了,那么该信息将在下一次在服务器之间复制的heartbeat上进行协调。当Eureka服务器出现时,它试图从相邻节点获取所有实例注册信息。
如果从节点获取信息有问题,服务器在放弃之前尝试所有的节点。
如果服务器能够成功地获得所有实例,它将根据该信息设置它应该接收的更新阈值。
如果任何时候,更新都低于为该值配置的百分比(在15分钟内低于85%),服务器停止过期实例以保护当前实例注册表信息。在Netflix上,上述保障被称为“自我保护模式”,它主要用于在一组客户端和Eureka服务器之间存在网络划分的场景中作为一种保护。
在这些场景中,服务器试图保护它已经拥有的信息。
可能出现大规模中断的情况,这可能导致客户端获得不再存在的实例。
客户端必须确保他们对eureka服务器返回一个不存在或没有响应的实例有弹性。
在这些场景中,最好的保护是快速超时并尝试其他服务器。在这种情况下,服务器无法从邻近节点获得注册表信息,它等待几分钟(5分钟),以便客户端可以注册他们的信息。
服务器努力不向客户端提供部分信息,只向一组实例倾斜流量并造成容量问题。
Eureka服务器使用Eureka客户端和服务器之间使用的相同机制进行通信。
同样值得注意的是,有几种配置可以在服务器上进行调整,包括在需要时服务器之间的通信。在对等网络中断的情况下,可能会发生以下情况:
对等点之间的心跳复制可能失败,服务器检测到这种情况,并进入保护当前状态的自我保护模式。
在孤立的服务器中可能会发生注册,一些客户可能会反映新的注册,而其他的可能不会。
在网络连接恢复到稳定状态后,情况自动更正。当对等点能够进行良好的通信时,注册信息就会自动转移到没有它们的服务器上。
底线是,在网络中断期间,服务器试图尽可能地恢复弹性,但在此期间客户可能会有不同的服务器视图。
原文地址:https://github.com/Netflix/eureka/wiki/Understanding-Eureka-Peer-to-Peer-Communication

关于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. js数组如何按照固定的下标去重_js数组去重的三种常用方法总结
  2. window.onload 不执行
  3. Pause/Resume Instance 操作详解 - 每天5分钟玩转 OpenStack(34)
  4. 从frame跳转到一个新的页面
  5. mysql 字符串替换:处理历史稿件中的图片路径
  6. 动态规划——数塔问题
  7. 浏览器端已支持 ES6 规范(包括 export import)
  8. 官网下载JDK需要登陆的Oracle账号
  9. 【TypeScript】TypeScript 学习 4——模块
  10. 《集体智慧编程》读书笔记2
  11. unet服务器向客户端发消息,unet
  12. web开发 DIV+CSS规范命名集合
  13. Delphi 鼠标移动
  14. php跳转qq临时会话,怎样做出在网页中弹出QQ临时对话框
  15. 【雕爷学编程】Arduino动手做(100)---MAX30102手腕心率
  16. 抄书——最优化的理论与方法(5)——数学基础(凸集和凸函数)
  17. TapTap实习两周总结
  18. 基于java企业固定资产管理系统的设计实现计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署
  19. 抓包实现原理与反抓包
  20. 周纪一 威烈王二十三年(戊寅、前403)——摘要

热门文章

  1. Android 10 电池图标修改
  2. 织梦建站教程,织梦安全问题解决,修改织梦URL命名规则
  3. 高效的敏捷测试第八课 静态测试工具和生成测试报告
  4. 新装的服务器wincc上一些图形不显示,wincc画面无法全部显示
  5. TCP的request_sock与sock
  6. 二十余岁时的社会观(三)
  7. 简单工厂模式在Logback源码以及JDK源码中的应用
  8. openbsd停止mysql_英特尔处理器超线程功能被OpenBSD 停用,并爆bug
  9. 经典的面板数据集(R语言包plm)
  10. Paddle-Lite 安卓端部署