微服务注册中心原理,看这篇就够了!

在微服务架构中,注册中心是最核心的基础服务之一,本文将详细介绍下注册中心的组成部分和它们之前的关系。

本文目录

一、注册中心原理二:注册中心功能

一、注册中心原理

注册中心主要涉及到三大角色:

  1. 服务提供者
  2. 服务消费者
  3. 注册中心

它们之间的关系大致如下:

  1. 各个微服务在启动时,将自己的网络地址等信息注册到注册中心,注册中心存储这些数据。

  2. 服务消费者从注册中心查询服务提供者的地址,并通过该地址调用服务提供者的接口。

  3. 各个微服务与注册中心使用一定机制(例如心跳)通信。如果注册中心与某微服务长时间无法通信,就会注销该实例。

  4. 微服务网络地址发送变化(例如实例增加或IP变动等)时,会重新注册到注册中心。这样,服务消费者就无需人工修改提供者的网络地址了。

注册中心的架构图如下:



二:注册中心功能

注册中心应具备以下功能:

  1. 服务注册表
    服务注册表是注册中心的核心,它用来记录各个微服务的信息,例如微服务的名称、IP、端口等。服务注册表提供查询API和管理API,查询API用于查询可用的微服务实例,管理API用于服务的注册与注销。

  2. 服务注册与发现
    服务注册是指微服务在启动时,将自己的信息注册到注册中心的过程。服务发现是指查询可用的微服务列表及网络地址的机制。

  3. 服务检查
    注册中心使用一定的机制定时检测已注册的服务,如发现某实例长时间无法访问,就会从服务注册表移除该实例。

Spring Cloud提供了多种注册中心的支持,例如Eureka、Consul和ZooKeeper等,下一篇文章将介绍下利用Eureka搭建注册中心,敬请期待哦。

推荐阅读
1.SpringBoot整合ActiveMQ,看这篇就够了!
2.别在 Java 代码里乱打日志了,这才是正确的打日志姿势!
3.编码神器Lombok,学会后开发效率至少提高一倍!
4.利用Spring Boot+zxing,生成二维码还能这么简单
5.Spring Boot之Profile--快速搞定多环境使用与切换

参考文章:《Spring Cloud与Docker 微服务架构实战》,周立


限时领取免费Java相关资料,涵盖了Java、Redis、MongoDB、MySQL、Zookeeper、Spring Cloud、Dubbo/Kafka、Hadoop、Hbase、Flink等高并发分布式、大数据、机器学习等技术。
关注下方公众号即可免费领取:

Java碎碎念公众号Java碎碎念公众号

 

posted @ 2019-09-17 12:40  Java碎碎念  阅读(6394)  评论(1编辑  收藏