4K讲清楚Eureka 高可用服务集群搭建

EurekaSpring Cloud生态中用于服务注册与发现的重要组件之一。Eureka分为Server端和Client端。

  • Eureka Server是一个公共服务,为Eureka Client提供服务注册和发现的功能,维护注册到自身的Eureka Client的相关信息,同时提供接口给Eureka Client获取注册表中其他服务的信息,使得动态变化的Eureka Client能够进行服务间的相互调用。

  • Eureka Client将自己的服务信息通过一定的方式登记到Eureka Server上,并在正常范围内维护自己信息一致性,方便其他服务发现自己,同时可以通过Eureka Server获取到自己依赖的其他服务信息,完成服务调用,还内置了负载均衡器,用来进行基本的负载均衡。

  • Eureka ServerEureka Client之间通过心跳的方式通信。心跳(Heartbeat)即Eureka Client定时向Eureka Server汇报本服务实例当前的状态,维护本服务实例在注册表中租约的有效性。同时Eureka Client也会定时从Eureka Server中拉取注册表中的信息,并将这些信息缓存到本地,用于服务发现。

Eureka 高可用可以利用运行多个Eureka Server实例并相互注册的方式实现。Server节点之间会彼此增量地同步信息,从而确保节点中数据一致。本文将重点实战如何搭建一个高可用的Eureka Server

一、CAP定理

1. 概念

CAP 定理指的是在一个分布式系统中,Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。

  • 一致性(C):分布式系统中多个主机之间是否能够保持数据一致的特性。即,当系统数据发生更新操作后,各个主机中的数据仍然处于一致的状态
  • 可用性(A):系统提供的服务必须一直处于可用的状态,即对于用户的每一个请求,系统总是可以在有限的时间内对用户做出响应。
  • 分区容错性(P):分布式系统在遇到任何网络分区故障时,仍能够保证对外提供满足一致性和可用性的服务

2. 定理

CAP 定理的内容是:对于分布式系统,网络环境相对是不可控的,出现网络分区是不可避免的,因此系统必须具备分区容错性。但系统不能同时保证一致性与可用性。即要么 CP

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值