一、Eureka的自我保护模式

如果在Eureka Server的首页看到以下这段提示,则说明Eureka已经进入了保护模式:

     EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY'RE NOT. RENEWALS ARE LESSER THAN THRESHOLD AND HENCE THE INSTANCES ARE NOT BEING EXPIRED JUST TO BE SAFE.
  • 1
  • 2
  • 3
  • 4

一般出现此模式时,服务返回错误。即如果真实的服务已经Down掉,但在注册中心界面服务却一直存在,且显示为UP状态。

产生原因:

    Eureka Server在运行期间,会统计心跳失败的比例在15分钟之内是否
低于85%,如果出现低于的情况(在单机调试的时候很容易满足,实际在
生产环境上通常是由于网
络不稳定导致),Eureka Server会将当前的实例注册信息保护起来,同时提
示这个警告。保护模式主要用于一组客户端和Eureka Server之间存在网络分
区场景下的保护。一旦进入保护模式,Eureka Server将会尝试保护其服务注
册表中的信息,不再删除服务注册表中的数据(也就是不会注销任何微服务)。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

解决方法:

详情可见上一篇博客,就不在这边赘述了。
  • 1
  • 2

如何处理服务挂掉后或者手动关闭服务后,Ribbon负载均衡还是一直调用这个服务:

1.Hystrix,在fallback方法中shutdown指定的服务
2.让zuul只路由到活着的那个服务:
添加依赖:<dependency><groupId>com.squareup.okhttp3</groupId><artifactId>okhttp</artifactId><version>3.6.0</version></dependency>
配置文件:
ribbon.connectTimeout: 2000
ribbon.readTimeout: 10000
ribbon.maxAutoRetries: 1
ribbon.maxAutoRetriesNextServer: 2
ribbon.okToRetryOnAllOperations: true
ribbon.okhttp.enabled: true
3.重试机制(和上述一个道理)
spring.cloud.loadbalancer.retry.enabled=true
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=10000
hello-service.ribbon.ConnectTimeout=250
hello-service.ribbon.ReadTimeout=1000
hello-service.ribbon.OkToRetryOnAllOperations=true
hello-service.ribbon.MaxAutoRetriesNextServer=2
hello-service.ribbon.MaxAutoRetries=1spring.cloud.loadbalancer.retry.enabled:该参数用来开启重试机制,它默认是关闭的。这里需要注意,官方文档中的配置参数少了enabled
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds:断路器的超时时间需要大于ribbon的超时时间,不然不会触发重试。hello-service.ribbon.ConnectTimeout:请求连接的超时时间hello-service.ribbon.ReadTimeout:请求处理的超时时间hello-service.ribbon.OkToRetryOnAllOperations:对所有操作请求都进行重试hello-service.ribbon.MaxAutoRetriesNextServer:切换实例的重试次数hello-service.ribbon.MaxAutoRetries:对当前实例的重试次数
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38

二、指定Eureka的Environment

eureka.environment: 指定环境
  • 1
  • 2

三、指定Eureka的DataCenter

eureka.datacenter: 指定数据中心
  • 1
  • 2

四、Whitelabel Error Page

@springBootApplication在进行加载时,只会加载其入口的当前目录及其子目录下的服务,如果存放在其它目录下,应用扫描不到
  • 1
  • 2

有不准确,或者有疑问的地方朋友,可以加群,也可以在评论中指出,谢谢大家

EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY'RE NOT. RENEWALS ARE相关推荐

  1. EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY‘RE NOT. RENEWALS ARE LESSER

    启动两个client,过了一会,停了其中一个,访问注册中心时,界面上显示了红色粗体警告信息: EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANC ...

  2. Spring Cloud Eureka 自我保护机制(EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY)

    在本地启动一个Euraka-Server服务(服务注册中心)和一个Euraka-Client服务(服务注册者-应用服务)两个服务.过了一会儿后,在Euraka-Server界面显示:EMERGENCY ...

  3. Spring Cloud(三):Eureka控制台参数说明

    1.HOME 进入Eureka控制台首页,首先看HOME页的头部 System Status Environment: 环境,默认为test,该参数在实际使用过程中,可以不用更改 Data cente ...

  4. SpringCloud(一):深入理解Eureka

    实例和客户端的元数据 Eureka Metadata for Instances and Clients 0.Eureka的元数据字面理解 原文: It is worth spending a bit ...

  5. Spring Cloud Eureka 自我保护机制

    Spring Cloud Eureka 自我保护机制 Eureka Server 在运行期间会去统计心跳失败比例在 15 分钟之内是否低于 85%,如果低于 85%,Eureka Server 会将这 ...

  6. Spring Cloud中,Eureka常见问题总结

    Spring Cloud中,Eureka常见问题总结. 1 eureka.environment: 指定环境 参考文档: 1 eureka.datacenter: 指定数据中心 参考文档: 使用配置项 ...

  7. 【学习笔记】Eureka服务治理代码实例、相关配置和原理机制详解

    文章目录 代码示例 启动一个服务注册中心 注册服务提供者 高可用注册中心 服务的发现与消费 Eureka的一些配置 服务注册类配置 服务实例类配置 实例名配置 端点配置 Eureka服务治理基础架构原 ...

  8. 【Java进阶】Eureka讲解与应用

    Eureka[juˈriːkə] 简介 Eureka是Netflix服务发现的服务端与客户端,Eureka提供服务注册以及服务发现的能力,当是Eureka Server时(注册中心),所有的客户端会向 ...

  9. Eureka的服务自我保护

    一个名字叫SPRINGCLOUD-EUREKA-CONSUMER,一个名字叫SPRINGCLOUD-EUREKA-PROVIDER,然后后面显示的是服务的详细信息,他的IP,服务名称,以及端口,然后U ...

  10. Eureka服务注册中心---SpringCloud

    Eureka服务注册中心 5.1 什么是Eureka Netflix在涉及Eureka时,遵循的就是API原则. Eureka是Netflix的有个子模块,也是核心模块之一.Eureka是基于REST ...

最新文章

  1. Cling旨在提供一款高性能的C++ REPL
  2. Kafka与RabbitMQ
  3. python有关迭代器和生成器的面试题_【面试题 | Python中迭代器和生成器的区别?】- 环球网校...
  4. 多文件的Makefile
  5. 工控图表控件ProEssentials改变子集的颜色和线条风格
  6. Java 12:使用开关表达式进行映射
  7. php 字符ascii转中文,PHP ASCII码与字符串相互转换的方法
  8. 涨价潮或延续至下半年 芯片国产化遇机遇
  9. 085 对象的绑定方法
  10. oracle临时表中数据消失了,oracle 临时表的使用
  11. Shell脚本实现判断一个数是否为质数
  12. ips 测试软件,IPS测试方法.doc
  13. 怎么自学编程python_怎样自学Python编程?
  14. 十大管理之项目干系人管理知识点
  15. MinGW32编译ffmpeg+libsrt
  16. AutoCAD二次开发:ObjectArx下的两种命令注册方式
  17. 【爬坑】解决“ImportError: cannot import name ‘soft_unicode‘ from ‘markupsafe‘ ”的问题
  18. 内核文件管理-IRP(一)创建或打开文件
  19. 全球及中国集成电路产业战略规划与运营前景调研报告2022版
  20. SAP中国区总裁萧洁云:我加盟SAP的三个原因

热门文章

  1. 无人机航测技术在地形测绘中的应用
  2. 历届奥斯卡最佳影片奖(推荐经典电影)
  3. 我为什么从阿里巴巴集团离职?
  4. 贴吧怎么发帖,发防删图出现审核怎么办?
  5. 用场景应用™玩转#冰桶挑战#
  6. _validate_lengths‘ from ‘numpy.lib.arraypad
  7. 汉能薄膜太阳能技术将国家电投大楼变身节能光伏建筑
  8. NetSuite 精益实施的ALV实践
  9. P3369 普通平衡树模板 treap
  10. 论文笔记 General Advantage Estimation(GAE)