Region 表示aws的地理位置,一个region有多个awailability zone,各region间完全隔离。这种方式实现最大的容错和稳定性。

spring cloud 默认使用的region是us-east-1c,非aws下awailability zone理解成机房,region理解成跨机房的eureka集群。

Eureka client 周期性向eureka server发送心跳,默认30s

Eureka server 默认90没有收到微服务心心跳就注销

多个eureka server之间通过复制实现服务注册表中数据同步

Eureka client会缓存服务注册表,从而降低eureka server的压力,另外当eureka server宕掉也可以从缓存中找到服务提供者。

Eureka Server的自我保护机制

https://mp.weixin.qq.com/s/vwPstQ0R0s_PsEhZnALP9Q

Eureka 缓存机制

http://blog.itpub.net/69918724/viewspace-2643265/

Eureka 常用配置

https://zhuanlan.zhihu.com/p/63524849

Eureka Server 相关配置 eureka.server.xxx

  • eureka.server.enable-self-preservation 是否开启自我保护机制

  • eureka.server.renewal-percent-threshold 表示 Eureka Server 开启自我保护的系数,默认:0.85

  • eureka.server.eviction-interval-timer-in-ms 表示 Eureka Server 清理无效节点的频率,默认 60000 毫秒(60 秒)。

Eureka Instance 相关配置 eureka.instance.xxx

  • eureka.instance.instance-id 服务实例的唯一id,默认

    ${spring.application.name}.${spring.application.instance_id:${server.port}}

  • eureka.instance.prefer-ip-address

    true: 实例以 IP 的形式注册

    false: 实例以机器 HOSTNAME 形式注册

  • eureka.instance.appname 服务名,默认取 spring.application.name 配置值,如果没有则为 unknown

  • eureka.instance.lease-renewal-interval-in-seconds

    表示 Eureka Client 向 Eureka Server 发送心跳的频率(默认 30 秒),如果在 lease-expiration-duration-in-seconds 指定的时间内未收到心跳,则移除该实例。

  • eureka.instance.lease-expiration-duration-in-seconds

    表示 Eureka Server 在接收到上一个心跳之后等待下一个心跳的秒数(默认 90 秒),若不能在指定时间内收到心跳,则移除此实例,并禁止此实例的流量。

    • 此值设置太长,即使实例不存在,流量也能路由到该实例

    • 此值设置太小,由于网络故障,实例会被取消流量

    需要设置为至少高于 lease-renewal-interval-in-seconds 的值,不然会被误移除了。

Eureka Client 相关配置 eureka.client.xxx

  • `eureka.client.fetch-registery

  • 客户端是否从 Eureka Server 获取实例注册信息

  • eureka.client.registery-fetch-interval-seconds

  • eureka.client.register-with-eureka

    表示此实例是否注册到 Eureka Server 以供其他实例发现。在某些情况下,如果你不想自己的实例被发现,而只想发现其他实例,配置为 false 即可。

  • eureka.client.serviceUrl.defaultZone

    表示客户端需要注册的 Eureka Server 的地址。

Eureka Server REST

常用服务发现组件对比

spring cloud之Eureka的更多相关文章

  1. spring cloud之eureka简介

    最近线上的接口出了一些问题,有一些可能不是代码的问题,但是由于是测试和其他方面的同事爆出来的,所以感觉对接口的监控应该提上日程. 经过搜索发现,spring cloud的eureka就是专门做这方面工 ...

  2. Spring Cloud Security&Eureka安全认证(Greenwich版本)

    Spring Cloud Security&Eureka安全认证(Greenwich版本) 一·安全 Spring Cloud支持多种安全认证方式,比如OAuth等.而默认是可以直接添加spr ...

  3. Spring cloud系列教程第十篇- Spring cloud整合Eureka总结篇

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

  4. Spring Cloud与Eureka

    Spring Cloud与Eureka 一.使用SpringCloud注册中心Eureka 1.1 Eureka和Zookeeper对比 1.1.1 Zookeeper保证CP 1.1.2 Eurek ...

  5. Spring Boot,Spring Cloud,Eureka,Actuator,Spring Boot Admin,Stream,Hystrix

    Spring Boot,Spring Cloud,Eureka,Actuator,Spring Boot Admin,Stream,Hystrix 一.Spring Cloud 之 Eureka. 1 ...

  6. Spring Cloud 组件 —— eureka

    官方文档,Spring Cloud 对其封装,Spring Cloud eureka 文档

  7. Spring cloud之Eureka(二)注册中心高可用

    背景 在实际的生产环境中,注册中心如果只有一个,是很危险的,当这个注册中心由于各种原因不能提供正常服务或者挂掉时,整个系统都会崩溃,这是很致命的的,所以在Spring cloud 设计之初就考虑到了注 ...

  8. Spring Cloud 之Eureka(一)

    简介 Eureka是Spring cloud 的基本套件之一,是基于Netflix 的Eureka做的二次封装,主要是负责完成微服务架构中的服务治理功能.它是微服务架构中最为核心和基础的模块,它主要是 ...

  9. Spring cloud Greenwich Eureka

    1.父工程POM文件中: <dependencyManagement> <dependencies> <!--spring cloud--> <depende ...

  10. 从零开始学spring cloud(八) -------- Eureka 高可用机制

    一.Eureka高可用机制介绍 Eureka服务器没有后端存储,但注册表中的服务实例都必须发送心跳以使其注册保持最新(因此可以在内存中完成). 客户端还有一个Eureka注册的内存缓存(因此,他们不必 ...

随机推荐

  1. Linux基础篇之CentOS的网络配置(DHCP,静态)

    1.启动系统,使用用户名.密码登录系统:  2. 配置网卡(DHCP获取IP地址.静态手动配置IP地址): 网卡的默认信息  DHCP模式修改为(下图): 静态IP地址修改为(下图): 无论哪种配置, ...

  2. zabbix上添加交换机监控记事

    ​ zabbix上添加交换机监控记事 ​ 第一次使用zabbix来添加监控华为s5720交换机,根本找不到头绪,像个无头的苍蝇一样的百度来处理,结果都没有任何效果,给自己增加了很多痛苦和心烦,增加不少 ...

  3. java——OOM内存泄漏

    资料: 一.什么是OOM OOM,全称“Out Of Memory”,翻译成中文就是“内存用完了”,当JVM因为没有足够的内存来为对象分配空间并且垃圾回收器也已经没有空间可回收时,就会抛出这个erro ...

  4. PyTorch 启程&拾遗

    1..Tensors are similar to NumPy’s ndarrays, with the addition being that Tensors can also be used on ...

  5. stat /var/lib/docker/tmp/docker-builder234542842/usr/local/resource/noah_init.sql

    参考:https://blog.csdn.net/andrew_wf/article/details/85202511 将noah_init.sql放到与Dockerfile同一目录

  6. [易学易懂系列|rustlang语言|零基础|快速入门|(28)|实战5:实现BTC价格转换工具]

    [易学易懂系列|rustlang语言|零基础|快速入门|(28)|实战5:实现BTC价格转换工具] 项目实战 实战5:实现BTC价格转换工具 今天我们来开发一个简单的BTC实时价格转换工具. 我们首先 ...

  7. C# MVC 视图 计算某一个列的总和

    需求:在需要计算每一列的总和显示在最后一行 eg; AA BB CC 1    2      3 1     2      3 SUM    2   4      6 大概是酱紫 我用的是mvc Mo ...

  8. js中回调函数(callback)的一些理解

    前言 我个人在学习Node.js相关知识时遇到了回调函数这个概念,虽然之前已经在c,c++等编程语言中用到过它,但还一直未对其机制有深入了解,这次就来好好谈一下它. 概念理解 百度对它的解释是回调函数 ...

  9. mysql锁定单个表的方法

    mysql锁定单个表的方法mysql>lock table userstat read;mysql>unlock tables; 本文来自ChinaUnix博客,如果查看原文请点:http ...

  10. redis序列化和反序列化

    RedisTemplate中需要声明4种serializer,默认为“JdkSerializationRedisSerializer”: 1) keySerializer :对于普通K-V操作时,ke ...