分布式微服务 - 2.服务注册 - 1.概念

分布式微服务 - 2.服务注册 - 1.概念

项目示例:

内容提要

  • 角色组成、服务注册组成
  • 框架

参考

角色组成

  • 服务提供者:提供服务的一方,实现具体的服务功能。
  • 服务消费者:使用服务的一方,请求使用服务功能。
  • 服务注册中心:连接服务提供者和服务消费者的桥梁,帮助服务提供者寻找可用的服务消费者。

服务注册组成

服务注册

服务提供者启动后主动到服务注册中心注册自身信息。

健康检查

不断检查服务列表中的服务提供者,保证其都是可用的。

健康检查方式:

  • 服务提供者不断向服务注册中心发送心跳信息,当服务注册中心超时未收到心跳信息时,判断服务提供者为异常。
  • 服务提供者自身发送心跳信息的方式并不精确,因为可能服务本身已经存在故障(某些接口功能不可用),但仍然可以不断的发送心跳信息,导致注册中心没有发觉该服务已经异常,从而源源不断的将流量打到已经异常的服务上来。因此不由服务本身来负责,而通过其它第三方的验证,从外部来确认服务的健康状态。

服务发现

所有注册的服务提供者形成一个服务列表,可以从服务列表中获取服务提供者的最新网络位置等服务信息。

服务发现模式

  • 服务消费者周期性地从服务注册中心获取服务列表,然后再选择一个合适的服务提供者进行服务调用。
  • 服务消费者向服务注册中心发送请求,服务注册中心再选择一个合适的服务提供者进行调用。

服务移除

当服务不可用时,将服务提供者信息从服务列表中移除。

需要移除服务的情况:

  • 通过健康检查判断服务提供者为异常时移除。
  • 服务提供者正常终止时,到注册中心移除自身记录。

服务注册框架

  • Eureka
  • Zookeeper
  • Consul
  • Nacos

在分布式系统中,CAP指一致性(consistency)、可用性(availability)、分区容错性(partition tolerance)。一致性是指分布式系统中所有节点在同一时间下数据是一致的,任何对数据的更新都会反映给所有节点。可用性是指系统能够在正常运行和响应请求的情况下保持可用性,即使出现单个节点或部分节点故障,系统仍然可以继续提供服务。分区容错性是指由于网络等原因导致节点间无法相互通信,形成若干孤立的子网络,此时仍可以提供服务并且在后续恢复通信时能够恢复一致性。

在CAP理论中,一个分布式系统不可能同时很好的满足一致性、可用性和分区容错性三个需求,最多只能同时较好的满足两个。CAP理论的关注粒度是数据,而不是整体系统设计的策略。Nacos既支持AP模式,也支持CP模式,两者之间可以切换。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值