Eureka服务配置与进阶
1. Eureka服务配置与进阶
1.1. 主要配置
1.1.1. 服务端(eureka.server.*)
enableSelfPreservation默认true,启用注册中心的自保护机制,Eureka如果统计到15分钟之内损失>15%的微服务心跳,则会触发自保护机制,不再提出服务提供者waitTimeInMsWhenSyncEmpty默认1000605,在Eureka服务器获取不到集群里对等服务器上的实例时,需要等待的时间,单位为毫秒,单机开发模式建议设置为0
1.1.2. 客户信息配置(eureka.client.*)
serviceUrl指定服务注册中心,类型为HashMap,并设置有一组默认值,默认key为defaultZone;默认的Value为http://localhost:8761/eureka,如果服务注册中心为高可用集群时,多个注册中心地址以逗号分隔。如果服务注册中心加入了安全验证,这里配置的地址格式为http://<username>:<password>@localhost:8761/eurekafetchRegistry是否从Eureka服务端获取注册信息,默认trueregistryFetchIntervalSeconds从Eureka服务端获取注册信息的间隔时间,单位为秒,默认30registerWithEureka是否要将自身的实例信息注册到Eureka服务端,默认true
1.1.3. 实例级别配置(eureka.instance.*)
leaseRenewalIntervalInSeconds,Eureka客户端向服务端发送心跳的时间间隔,单位为秒,默认30leaseExpirationDurationInSeconds,Eureka服务端在收到最后一次心跳之后等待的过期时间上线,单位为秒。超过该时间没有收到心跳,则服务端会将该服务实例从服务清单中剔除,从而禁止服务调用请求被发送到该实例上appname服务名,默认取spring.application.name的配置值,如果没有则为unknownhostname主机名,不配置的时候将根据操作系统的主机名来获取instance-id注册到eureka的实例id,推荐${spring.cloud.client.ip-address}:${spring.application.name}:${server.port}
1.1.4. Ribbon主要配置项({svc}.ribbon.*)
ConnectionTimeout连接超时时间,默认值1000msReadTimeout读取超时时间,默认1000msServerListRefreshInterval刷新服务列表源的间隔时间,默认30sNFLoadBalancerClassName定制ILoadBalancer实现,默认com.netflix.loadbalancer.ZoneAwareLoadBalancerNFLoadBalancerRuleClassName定制IRule实现,默认com.netflix.loadbalancer.ZoneAvoidanceRuleNFLoadBalancerPingClassName定制IPing,默认com.netflix.loadbalancer.DummyPingNIWSServerListClassName定制ServerList,默认com.netflix.loadbalancer.ConfigurationBasedServerListServerListUpdateClassName定制serverListUpdater,默认com.netflix.loadbalancer.PollingServerListUpdaterNIWSServerListFilterClassName定制ServerListFilter,默认com.netflix.loadbalancer.ZonePreferenceServerListFilter
1.2. Eureka自保护模式
- 避免网络分区或抖动导致的,服务端与Eureka通信不成功,但实际服务端是存活的
1.3. 心跳检查和应用检测
- 实例会定期默认30s,向Eureka Server发送心跳式健康检查,把自己的状态服务实例信息上报上去
- 定制注册
EurekaClient#registerHeathCheck - Spring Cloud配置
eureka.client.healthcheck.enable=true,EurekaHealthCheckHandler中回去执行检查,DiskSpaceHealthIndicator,RefreshScopeHealthIndicator,HystrixHealthIndicator - 获取应用信息
GET /eureka/apps/ORDER-SERVICE,获取XML信息结果 - 实例信息更新延迟的地方有哪些
- 注册延迟(30s)
- Eureka服务响应延迟(30s)
- Eureka客户端更新延迟(30s)
- Ribbon服务列表更新延迟(30s)
- 所以最大可能又2分钟延迟
1.4. 蓝绿发布
- 发布工具拉出

1.5. 服务注册中心对比

Eureka服务配置与进阶的更多相关文章
- SpringCloud 进阶之Eureka(服务注册和发现)
1. Eureka 服务注册与发现 Eureka 是一个基于REST的服务,用于服务的的注册与发现; Eureka采用C-S的设计架构,Eureka Server作为服务注册功能的服务器,它是服务注册 ...
- Eureka服务下线后快速感知配置
现在由于eureka服务越来越多,发现服务提供者在停掉很久之后,服务调用者很长时间并没有感知到变化,依旧还在持续调用下线的服务,导致长时间后才能返回错误,因此需要调整eureka服务和客户端的配置,以 ...
- SpringCloud系列四:Eureka 服务发现框架(定义 Eureka 服务端、Eureka 服务信息、Eureka 发现管理、Eureka 安全配置、Eureka-HA(高可用) 机制、Eureka 服务打包部署)
1.概念:Eureka 服务发现框架 2.具体内容 对于服务发现框架可以简单的理解为服务的注册以及使用操作步骤,例如:在 ZooKeeper 组件,这个组件里面已经明确的描述了一个服务的注册以及发现操 ...
- spring-cloud配置高可用eureka服务端
spring-cloud配置eureka服务端 eureka用来发现其他程序 依赖 <?xml version="1.0" encoding="UTF-8" ...
- Spring Cloud(九)高可用的分布式配置中心 Spring Cloud Config 集成 Eureka 服务
上一篇文章,讲了SpringCloudConfig 集成Git仓库,这一篇我们讲一下SpringCloudConfig 配和 Eureka 注册中心一起使用 在分布式系统中,由于服务数量巨多,为了方便 ...
- 小D课堂 - 新版本微服务springcloud+Docker教程_3-07 Eureka服务注册中心配置控制台问题处理
笔记 7.Eureka服务注册中心配置控制台问题处理 简介:讲解服务注册中心管理后台,(后续还会细讲) 问题:eureka管理后台出现一串红色字体:是警告,说明有服务上线率低 EMERGENC ...
- eureka 服务实例实现快速下线快速感知快速刷新配置解析
Spirng Eureka 默认配置解读 默认的Spring Eureka服务器,服务提供者和服务调用者配置不够灵敏,总是服务提供者在停掉很久之后,服务调用者很长时间并没有感知到变化.或者是服务已经注 ...
- SpringCloud学习笔记(四):Eureka服务注册与发现、构建步骤、集群配置、Eureka与Zookeeper的比较
简介 Netflix在设计Eureka时遵守的就是AP原则 拓展: 在分布式数据库中的CAP原理 CAP原则又称CAP定理,指的是在一个分布式系统中,Consistency(一致性). Availab ...
- Spring-cloud & Netflix 源码解析:Eureka 服务注册发现接口 ****
http://www.idouba.net/spring-cloud-source-eureka-client-api/?utm_source=tuicool&utm_medium=refer ...
随机推荐
- memset库函数
头文件:#include <string.h> 定义函数:void * memset(void *s, int c, size_t n); 函数说明:memset()会将参数s 所 ...
- CentOS的启动流程
因6和7俩个系列的启动流程有区别,所以我把他们分开来写 linux可看作是内核和根文件系统组成我们把内核单独拿出来总结一下 CentOS6系列启动流程 首先总结一下总体的流程,接下来展开来叙述:POS ...
- BOM,DOM常见操作和DHML
BOM (Browser Object Model)浏览器对象模型,控制浏览器的一些行为 window对象 代表一个HTML文档 属性 页面导航的5个属性 self, parent, top, ope ...
- composer安装laravel指定版本
版权声明:本文为博主原创文章,未经博主允许不得转载. http://blog.csdn.net/qq_38125058/article/details/79126051 首先安装composer,附安 ...
- vue 使用踩坑 note
1. 如图,假如large那一行错写成 'large': item.ext_data.isLarge + '' === 'true',, 那么,编译不报错,控制台无提示,模板不输出. 2. vue的t ...
- wcf双工通讯
首先说一个服务引用不成功的解决办法: 需要把服务端配置文件中的Binding换成: <endpoint address="" binding="BasicHttpB ...
- CF#483(div2 C)
http://codeforces.com/contest/984/problem/C C. Finite or not time limit per test 1 second memory lim ...
- sql语句查询执行顺序
http://blog.csdn.net/bitcarmanlee/article/details/51004767
- SSM-Spring-21:Spring中事物的使用案例
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 股票买卖案例(我会用三种开启事物的方法 代理工厂bean版的,注解版的,aspectj xml版的) 简单的介 ...
- Ubuntu系统下安装CodeBlocks
本文由荒原之梦原创,原文链接:http://zhaokaifeng.com/?p=616 1 添加CodeBlocks的软件仓库 sudo add-apt-repository ppa:damien- ...