看啥推荐读物
专栏名称: 木子教程
十年以上IT工作经验,有架构师、大数据分析、...
今天看啥  ›  专栏  ›  木子教程

07 微服务的注册中心

木子教程  · 简书  ·  · 2021-12-31 11:01

注册中心可以说是微服务架构中的”通讯录“,它记录了服务和服务地址的映射关系。在分布式架构中, 服务会注册到这里,当服务需要调用其它服务时,就这里找到服务的地址,进行调用。

image-20211219183320224.png

注册中心的主要作用

服务注册中心(下称注册中心)是微服务架构非常重要的一个组件,在微服务架构里主要起到了协调者 的一个作用。注册中心一般包含如下几个功能:

  1. 服务发现:

    服务注册/反注册:保存服务提供者和服务调用者的信息

    服务订阅/取消订阅:服务调用者订阅服务提供者的信息,最好有实时推送的功能

    服务路由(可选):具有筛选整合服务提供者的能力。

  2. 服务配置:

    配置订阅:服务提供者和服务调用者订阅微服务相关的配置

    配置下发:主动将配置推送给服务提供者和服务调用者

  3. 服务健康检测

    检测服务提供者的健康情况

常见的注册中心

Zookeeper zookeeper

它是一个分布式服务框架,是Apache Hadoop 的一个子项目,它主要是用来解决分布式应 用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项 的管理等。简单来说zookeeper=文件系统+监听通知机制。

Eureka

Eureka是在Java语言上,基于Restful Api开发的服务注册与发现组件,Springcloud Netflix中的重要组 件

Consul Consul

是由HashiCorp基于Go语言开发的支持多数据中心分布式高可用的服务发布和注册服务软件, 采用Raft算法保证服务的一致性,且支持健康检查。

Nacos Nacos

是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。简单来说 Nacos 就是 注册中心 + 配置中心的组合,提供简单易用的特性集,帮助我们解决微服务开发必会涉及到的服务注册 与发现,服务配置,服务管理等问题。Nacos 还是 Spring Cloud Alibaba 组件之一,负责服务注册与 发现。

最后我们通过一张表格大致了解Eureka、Consul、Zookeeper的异同点。选择什么类型的服务注册与 发现组件可以根据自身项目要求决定。

image-20211219183647225.png



原文地址:访问原文地址
快照地址: 访问文章快照