Spring cloud学习笔记一服务治理Eureka

服务治理-概念&技术选型

服务治理

技术选型

分布式系统CAP定理:(C)一致性,(A)可用性,(P )分区容错性,分布式系统中只能三元二,不能全占,一般CP,AP。

  • Eureka
  • Consul
  • Nacos

服务治理组件对比

Eureka-服务治理全链路

Eureka服务治理组件主要功能为:服务注册、服务发现、心跳和续约、服务下线、剔除和自保

####注册中心配置######
eureka.instance.hostname=localhost
#注册中心不注册到注册中心
eureka.client.register-with-eureka=false
#不从注册中心拉取服务信息
eureka.client.fetch-registry=false

服务注册

Eureka的注册模式为注册中心等服务节点主动上门注册。

服务注册信息有:服务名称、服务节点IP、节点状态。

Eureka采用的是居于客户端的服务发现,调用方从注册中心拉取可用的服务列表然后从中选择一个调用。

#服务注册到注册中心配置
eureka.client.serviceUrl.defaultZone=http://localhost:20000/eureka/

心跳检测

心跳服务是由一个个服务节点主动发起的,告诉注册中心自己的状态。Eureka可以通过心跳来知道服务的可用性。

## 客户端指标
#每隔多久向注册中心发送一个心跳包
eureka.instance.lease-renewal-interval-in-seconds=10
#告诉注册中心X秒后还没有心跳,代表挂掉了
eureka.instance.lease-expiration-duration-in-seconds=20

服务剔除

Eureka的服务剔除功能可以让无心跳的服务自动下线。服务剔除步骤如下:

  1. 启动定时任务 注册中心在启动时会开启一个后台任务,默认每隔60s触发服务剔除服务。
#可以通过下面配置来修改,修改成30S
eureka.server.eviction-interval-timer-in-ms=30000
  1. 调用ecivt方法
  2. 服务自保,如果服务自保开启则会中断服务剔除
  3. 遍历找出已经过期的服务
  4. 计算可剔除的服务。(总数*可更新比例)
  5. 乱序剔除超时服务

服务续约

服务节点会向注册中心发送续约请求。

服务自保

过去一段时间内,服务续约的节点占所有注册节点的比例低于一个限定值(默认85%)时开始服务自保。

#强制关闭服务自保(自动开关不起作用)
eureka.server.enable-self-preservation=false

服务下线

服务节点可以主动向注册中心发起资源释放指令。

注册中心高可用改造(双备份注册中心)

集群+互备

#注册中心集群配置
eureka.client.service-url.defaultZone=http://localhost:20001/eureka
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值