Eureka服务端

一般我们Server端会像下图一样,引入Eureka,下面就通过这个来分析Eureka服务端源码流程
在这里插入图片描述

一、服务端配置
@EnableEurekaServer会引入EurekaServerMarkerConfiguration类
在这里插入图片描述

EurekaSeverMarkerConfiguration最终会引入Marker对象,这就是一个标记对象
在这里插入图片描述

二、SpringBoot 加载EurekaServerAutoConfiguration
SpringBoot会在启动的时候加载 spring-cloud-netflix-eureka-server端下面的META-INF下面的EurekaServerAutoConfiguration
让我们来看看这个类
在这里插入图片描述

在@ConditionalOnBean这里我们就会发现当时加的Marker多有用了

三、EurekaServerAutoConfiguration和EurekaClientAutoConfiguration详解
这个类通过 @configuration和@bean,引入了很多Eureka源码中常见的组件
3.1 实例管理组件
在这里插入图片描述

ApplicationInfoManager 实例管理器, Eureka-server会依赖Eureka-client,Eureka client又会导入EurekaClientAutoConfiguration
这个类会导入实例管理器,
在这里插入图片描述

里面的实例信息为:
在这里插入图片描述

3.2 Eureka client实例
Eureka Server在运行的时候,也需要eureka client,因为它也需要向其他server进行网络通信
在这里插入图片描述

3.3 client端 服务注册组件
在这里插入图片描述

3.2 server端 服务发现、注册组件
在这里插入图片描述

完成后续的服务端启动的时候,从相邻节点拉取全量的注册表信息

3.3 集群节点管理组件
在这里插入图片描述

集群节点配置信息,当server端新增节点的时候,都是要向相邻节点注册上去的

3.4 eureka server上下文
在这里插入图片描述
在这里插入图片描述

Server端 接收请求组件,类似于springmvc的 controller
在这里插入图片描述

3.6 EurekaServer初始化组件

在这里插入图片描述

四、Server端完整流程(最重要)
上面这些组件都准备好了,server端就要开始启动了,看看入口在哪里,有哪些流程?
4.1 服务注册
一般来说,server启动完成后,会向其他server端进行服务注册,这一步在那里?其实就是我们上面说的
EurekaAutoServiceRegistration
它的start会完成向服务端注册
在这里插入图片描述

4.2 服务发现
Server端的服务发现和Client端的服务发现是不一样的,Server端的服务发现是要从相邻的server节点拉取注册表

上面不是引入一个EurekaServerInitializerConfiguration
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这里非常重要,通过调用PeerAwareInstanceRegistry
的syncUp来同步相邻节点的注册表信息

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/319800.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JavaScript中location对象使用【详解】

✨前言✨   本篇文章主要在于,了解并会使用JavaScript中location对象 🍒欢迎点赞 👍 收藏 ⭐留言评论 📝私信必回哟😁 🍒博主将持续更新学习记录收获,友友们有任何问题可以在评论区留言 &…

CNN——AlexNet

1.AlexNet概述 论文原文:ImageNet Classification with Deep Convolutional Neural Networks 在LeNet提出后,卷积神经网络在计算机视觉和机器学习领域中很有名气。但卷积神经网络并没有主导这些领域。这是因为虽然LeNet在小数据集上取得了很好的效果&am…

二叉树链式结构的实现(二叉树的遍历以及各种常用功能函数的实现)

之前也是把堆部分的知识点梳理完毕(即二叉树链式顺序的实现):堆的应用:堆排序和TOP-K问题 那么讲完了二叉树链式结构的实现。今天就进入二叉树链式结构的实现: 文章目录 1.准备工作2.二叉树的遍历2.1前序遍历2.2中序遍…

【C语言】程序练习(四)

大家好,这里是争做图书馆扫地僧的小白。非常感谢各位的支持,也期待着您的关注。 目前博主有着C语言、C、linux以及数据结构的专栏,内容正在逐步的更新。 希望对各位朋友有所帮助同时也期望可以得到各位的支持,有任何问题欢迎私信与…

数学公式编译器MathType下载与安装

下载网址:下载 MathType - WIRIS Store 1.点击【下载MathType for Windows】 2、点击中文版 3.找到所下载的目录: 右击-->以管理员身份运行 4、新建word文档 点击文件->账户->关于word 5.点击【文件】、【选项】,❶点击【加载项】…

Elasticsearch:结合 ELSER 和 BM25 文本查询的相关搜索

Elastic Learned Spare EncodeR (ELSER) 允许你执行语义搜索以获得更相关的搜索结果。 然而,有时,将语义搜索结果与常规关键字搜索结果相结合以获得最佳结果会更有用。 问题是,如何结合文本和语义搜索结果? 首先,让我…

SAP BAPI 客户主数据创建:cmd_ei_api=>maintain_bapi

BAPI函数:cmd_ei_api>maintain_bapi 事物代码:XD01/XD02 客户主数据创建、修改、拓展功能开发 数据结构定义: 基本视图信息 公司代码信息结构: 销售视图信息结构: 客户主数据税分类信息结构: 代码参考 详细代码…

众和策略:高股息板块持续红火,煤炭股会否走上慢牛重估之路?

1月3日,煤炭板块连续此前活跃走势,走出日线三连阳。截至收盘,东方财富煤炭板块全体上涨1.75%。盘面显示,35只煤炭股仅有3只股价跌落,其中,云煤动力(600792.SH)涨停,郑州煤…

Linear Regression 线性回归

深度学习: 数据集模型选择训练(KNN不需要)推理(预测) 假设学生用x小时学习深度学习,能够得要y分数: 那么学习4小时,能够得到多少分? 用已知数据作为训练集&#xff1a…

MySQL8.0主从复制实现及遇到的个人问题

文章目录 1、准备两个服务器或者虚拟机2、主库配置3、从库配置4、配置过程中使用到的命令5、遇到的问题 1、准备两个服务器或者虚拟机 这里使用的VM虚拟机的Centos、MySQL版本是8.0.26、使用FinalShell进行远程操作。 2、主库配置 修改MySQL配置文件(/etc/my.cnf) #启用二进…

ROS学习记录:在ROS中用C++实现激光雷达避障

前言 本文建立在成功获取激光雷达数据的基础上&#xff0c;详细参考 在ROS中用C实现获取激光雷达的数据 一、实现思路 二、在VScode中打开之前编写好的lidar_node.cpp 三、在lidar_node.cpp中写入如下代码 #include <ros/ros.h> #include <std_msgs/String.h> …

thinkadmin安装步骤

一,先cmd运行安装命令 ### 创建项目&#xff08; 需要在英文目录下面执行 &#xff09; composer create-project zoujingli/thinkadmin二,在confing中的database.php配置数据库 三,将仓库的data复制到app目录下 https://gitee.com/zoujingli/think-plugs-data 四,在cmd运…