Spring Cloud中,Eureka常见问题总结。

1
eureka.environment: 指定环境

参考文档:

1
eureka.datacenter: 指定数据中心

参考文档: 使用配置项:

1
eureka.instance.leaseRenewalIntervalInSeconds

参考文档:

1
2
3

翻译:

1
作为实例还涉及到与注册中心的周期性心跳,默认持续时间为30秒(通过serviceUrl)。在实例、服务器、客户端都在本地缓存中具有相同的元数据之前,服务不可用于客户端发现(所以可能需要3次心跳)。你可以使用eureka.instance.leaseRenewalIntervalInSeconds 配置,这将加快客户端连接到其他服务的过程。在生产中,最好坚持使用默认值,因为在服务器内部有一些计算,他们对续约做出假设。

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

1
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.

保护模式主要用于一组客户端和Eureka Server之间存在网络分区场景下的保护。一旦进入保护模式,Eureka Server将会尝试保护其服务注册表中的信息,不再删除服务注册表中的数据(也就是不会注销任何微服务)。

详见: 在开发过程中,我们常常希望Eureka Server能够迅速有效地踢出已关停的节点,但是新手由于Eureka自我保护模式,以及心跳周期长的原因,常常会遇到Eureka Server不踢出已关停的节点的问题。解决方法如下:

(1) Eureka Server端:配置关闭自我保护,并按需配置Eureka Server清理无效节点的时间间隔。

1
2
eureka.server.enable-self-preservation # 设为false,关闭自我保护
eureka.server.eviction-interval-timer-in-ms # 清理间隔(单位毫秒,默认是60*1000)

(2) Eureka Client端:配置开启健康检查,并按需配置续约更新时间和到期时间。

1
2
3
eureka.client.healthcheck.enabled # 开启健康检查(需要spring-boot-starter-actuator依赖)
eureka.instance.lease-renewal-interval-in-seconds # 续约更新时间间隔(默认30秒)
eureka.instance.lease-expiration-duration-in-seconds # 续约到期时间(默认90秒)

示例:
服务器端配置:

1
2
3
4
eureka:
server:
enable-self-preservation: false
eviction-interval-timer-in-ms: 4000

客户端配置:

1
2
3
4
5
6
7
eureka:
client:
healthcheck:
enabled: true
instance:
lease-expiration-duration-in-seconds: 30
lease-renewal-interval-in-seconds: 10

注意:
更改Eureka更新频率将打破服务器的自我保护功能,生产环境下不建议自定义这些配置。
详见:
在Spring Cloud中,服务的Instance ID的默认值是${spring.cloud.client.hostname}:${spring.application.name}:${spring.application.instance_id:${server.port}} ,也就是机器主机名:应用名称:应用端口 。因此在Eureka Server首页中看到的服务的信息类似如下:itmuch:microservice-provider-user:8000 。如果想要自定义这部分的信息怎么办?

示例:

eureka:client:serviceUrl:defaultZone: http://localhost:8761/eureka/instance:preferIpAddress: trueinstance-id: ${spring.cloud.client.ipAddress}:${server.port}        # 将Instance ID设置成IP:端口的形式

eureka.client.healthcheck.enabled=true 只应该在application.yml中设置。如果设置在bootstrap.yml中将会导致一些不良的副作用,例如在Eureka中注册的应用名称是UNKNOWN等。

转自:http://www.itmuch.com/spring-cloud-sum-eureka/

转载于:https://www.cnblogs.com/leleroyn/p/7943861.html

Spring Cloud中,Eureka常见问题总结相关推荐

  1. Spring Cloud中Eureka开启密码认证----(springcloud配置系列一)

    转载自 https://blog.csdn.net/u011499747/article/details/77410997 Eureka服务端配置 添加spring-boot-starter-secu ...

  2. Spring Cloud 启动Eureka的Client(客户端)时,项目一启动就停止,控制台无任何报错信息

    问题描述:再利用IDEA开发工具快速构建一个Spring Cloud中Eureka 客户端(client)后,项目一点击启动就停止,控制台无任何报错信息. 解决方法: 当出现这种情况的时候我们先在控制 ...

  3. 【夯实Spring Cloud】Spring Cloud中的Eureka服务注册与发现详解

    本文属于[夯实Spring Cloud]系列文章,该系列旨在用通俗易懂的语言,带大家了解和学习Spring Cloud技术,希望能给读者带来一些干货.系列目录如下: [夯实Spring Cloud]D ...

  4. Spring Cloud中Hystrix仪表盘与Turbine集群监控

    Hystrix仪表盘,就像汽车的仪表盘实时显示汽车的各项数据一样,Hystrix仪表盘主要用来监控Hystrix的实时运行状态,通过它我们可以看到Hystrix的各项指标信息,从而快速发现系统中存在的 ...

  5. Spring Cloud Netflix Eureka 配置参数说明

    为什么80%的码农都做不了架构师?>>>    Eureka Client 配置项(eureka.client.*) org.springframework.cloud.netfli ...

  6. 10 在Spring Cloud中使用Hystrix

    Hystrix主要用于保护调用服务的一方,如果被调用的服务发生故障,符合一定条件,就会开启断路器对调用的程序进行隔离. 1.准备测试程序 在进行Spring Cloud整合Hystrix之前,我们先准 ...

  7. spring cloud集成Eureka

    spring cloud整合Eureka 文章目录 spring cloud整合Eureka Server模块的搭建 pom.xml配置 启动类配置 application.yam配置 查看Eurek ...

  8. eureka集群只注册一个_Spring cloud系列教程第十篇- Spring cloud整合Eureka总结篇

    Spring cloud系列教程第十篇- Spring cloud整合Eureka总结篇 本文主要内容: 1:spring cloud整合Eureka总结 本文是由凯哥(凯哥Java:kagejava ...

  9. Spring Cloud中的@EnableDiscoveryClient注解和@EnableEurekaClient注解

    在Spring Cloud中我们会发现在启动类中不管是使用@EnableDiscoveryClient注解还是使用@EnableEurekaClient注解都可以将Eureka Client注册到Eu ...

最新文章

  1. 机器学习笔记:ResNet 及残差连接
  2. ArcGIS Pro发布三维场景服务
  3. oracle中minus
  4. LCD显示深究day01 mmap知识补充
  5. 代数学笔记5: 群论(一)
  6. 24.Linux-Nand Flash驱动(分析MTD层并制作NAND驱动)
  7. C++ machine code与随机数 进阶习题
  8. 一文学会如何使用Java的交互式编程环境 JShell
  9. 晶体表面原子结构和一篇论文
  10. Android 6.0 sensor 框架详解 (application层)
  11. 一个简单的数字记忆训练软件介绍
  12. MAC docker 使用阿里加速器
  13. 旋转式直流无刷Maxon电机与copley驱动器调试
  14. 如何用阿里云服务器建立个人网站
  15. 小程序IOS安全区域优化:safe-area-inset-bottom
  16. python时间函数纳秒_在Python中以秒和纳秒获取POSIX / Unix时间?
  17. 宝塔怎么看蜘蛛爬取日志
  18. Bombs CodeForces - 350C
  19. Dbeaver基本使用
  20. Springboot项目 web 添加 favicon.ico图标

热门文章

  1. Struts2框架学习之七:避免表单重复提交
  2. D3D API - D3DTA_TEMP
  3. 招人信息,请斟酌后联系偶!
  4. decide how to invest 15 million pound in the development cost?
  5. UE4材质:纯数学算法实现水面水波扩散效果
  6. 在Ubuntu11.10下构建hadoop实验环境笔记
  7. SpringBoot | 自动配置原理
  8. uGUI知识点剖析之RectTransform
  9. Android Studio3.0中dependencies依赖由compile变为implementation的区别
  10. 《DevOps实战:VMware管理员运维方法、工具及最佳实践》——2.3 配置管理