当前位置: 首页 > news >正文

Eureka - 总览

文章目录

  • 前言
  • 架构
    • 注册中心 Eureka Server
    • 服务提供者 Eureka Client
    • 服务消费者 Eureka Client
  • 总结
  • 资源


前言

微服务(Microservices,一种软件架构风格)核心的组件包括注册中心,随着微服务的发展,出现了很多注册中心的解决方案,其中包括我们熟知的 Eureka。

Eureka 的设计原则是 AP,即可用性和分区容错性。在某一时刻各个节点的数据可能是不一致的,但最终会同步保持一致。

架构

Eureka 架构
上图是 Eureka 组件的调用关系。

注册中心 Eureka Server

注册中心启动后,将从其他节点(若有)获取(fetchRegistry)服务注册信息,并且定时运行 evict 任务,剔除没有按时 renew 的服务(非正常停止和网络故障的服务)。运行过程中,接受服务提供者的注册(register)、心跳(renew)和下线(cancel)请求,这些请求数据,也会同步到其他注册中心节点。

  • DefaultEurekaServerContext#initialize:初始化同步节点注册信息
  • AbstractInstanceRegistry#postInit:剔除定时任务,默认 60 秒

服务提供者 Eureka Client

服务提供者启动后,向注册中心发起 register 请求注册服务,并且启动定时任务向注册中心发送 renew 心跳,防止被注册中心驱除 evict。当服务提供者关闭时,向注册中心发送下线 cancel 通知。

  • DiscoveryClient#register:向注册中心注册当前服务
  • DiscoveryClient#renew:定时向注册中心续租,默认 30 秒
  • DiscoveryClient#shutdown:客户端关闭取消租约

服务消费者 Eureka Client

服务消费者启动后,向注册中心拉取 fetchRegistry 服务注册信息,并且启动定时任务定时更新注册列表。消费者根据需求向提供者发起请求。

  • DiscoveryClient#fetchRegistry:获取服务注册列表

总结

Eureka 主打高可用,对数据一致性要求较低,可适用于云机房集群,跨越多机房部署的场景。

资源

微服务
Netflix/eureka
CAP 定理

http://www.lryc.cn/news/28706.html

相关文章:

  • 【算法设计-枚举、分治】素数、约数、质因数分解
  • 【第十四届蓝桥杯】第三期模拟赛B组C++题解(待修正+持续更新-ing)
  • 线程池和ThreadLocal详解
  • [深入理解SSD系列综述 1.7] SSD固态存储市场发展分析与预测_固态存储技术发展方向(2022to2023)
  • 【2021.12.25】ctf逆向中常见加密算法和编码识别
  • 【数据结构初阶】堆排序
  • Day5: platformDriver-1
  • 开发手册——一、编程规约_7.控制语句
  • python每日学9 : windows上配置gitee的远程仓库,git的初步使用
  • 精确率与召回率,ROC曲线与PR曲线
  • 现代操作系统——Linux架构与学习
  • 中文代码82
  • 顺序表(一篇带你掌握顺序表)
  • 【SpringCloud】SpringCloud教程之Feign实战
  • 嵌入式linux必备内存泄露检测神器
  • 设计模式之行为型模式
  • 解密 三岁的三岁到底为什么叫做三岁?
  • id选择器
  • 《科技之巅3》读书笔记
  • 18.用于大型程序的工具
  • mysql一主键uuid和自增的选择
  • 【EDA工具使用】——VCS和Verdi的联合仿真的简单使用
  • 【Java学习笔记】4.Java 对象和类
  • 39. 实战:基于api接口实现视频解析播放(32接口,窗口化操作,可导出exe,附源码)
  • 基于灵动 MM32 微控制器的便携式血氧仪方案
  • 2022秋-2023-中科大-数字图像分析-期末考试试卷回忆版
  • 【matplotlib】条形图及垂线显示小技巧 |一些有用参考帖子收集
  • Go的bytes.Buffer
  • k8s学习之路 | Day19 k8s 工作负载 Deployment(上)
  • php宝塔搭建部署实战六零导航页LyLme_Spage源码