😀前言
本篇博文是关于SpringCloud Eureka 介绍,希望你能够喜欢
🏠个人主页:晨犀主页
🧑个人简介:大家好,我是晨犀,希望我的文章可以帮助到大家,您的满意是我的动力😉😉
💕欢迎大家:这里是CSDN,我总结知识的地方,欢迎来到我的博客,感谢大家的观看🥰
如果文章有什么需要改进的地方还请大佬不吝赐教 先在此感谢啦😊
文章目录
- SpringCloud Eureka 服务注册与发现
- Eureka 介绍
- 学Eureka 前的说明
- 当前项目架构问题分析-引出Eureka
- 架构分析示意图
- 对问题分析
- 引入Eureka 项目架构
- 架构剖析图
- 解读
- 服务治理介绍
- Eureka 实现服务治理
- 服务注册和发现
- 😄总结
SpringCloud Eureka 服务注册与发现
Eureka 介绍
学Eureka 前的说明
1、Spring Cloud 组件选型- 图
2、从上图可以看出, 目前主流的服务注册&发现的组件是Nacos, 但是Eureka 作为一个老牌经典的服务注册&发现技术还是有必要学习一下, 原因
(1) 一些早期的分布式微服务项目使用的是Eureka, 小伙伴在工作中, 完全有可能遇到这种情况.
(2) 后期的服务注册&发现组件/技术, 都参考了Eureka 设计和理念, 学习了Eureka 后, 我们上手Nacos 容易很多,而且理解的更深刻.
当前项目架构问题分析-引出Eureka
架构分析示意图
对问题分析
1.在企业级项目中,服务消费访问请求会存在高并发
2.如果只有一个会员中心-提供服务,可用性差
3.所以,会员中心提供服务往往是一个集群,也就是说会有多个会员中心-提供服务微服务模块
4.那么这个时候,就存在一个问题就是服务消费方,怎么去发现可以使用的服务
5.当服务消费方,发现了可以使用的服务后(可能是多个,又存在一个问题就是到底调用A服务,还是B 服务的问题,这就引出了服务注册和负载均衡)
6.Eureka 就可以解决上述问题
引入Eureka 项目架构
架构剖析图
解读
- 会员中心-提供服务的,在项目中,会做成集群,提供高可用。
- Eureka Server 有必要的话,也可以做成集群。
- Eureka 包含两个组件∶Eureka Server 和Eureka Client。
- Eureka Server 提供注册服务, 各个微服务节点通过配置启动后,会在Eureka Server 中进行注册,这样EurekaServer 中的服务注册表中将会存储所有可用服务节点的信息,服务节点的信息可以在界面中直观看到。
- EurekaClient 通过注册中心进行访问, 是一个Java 客户端,用于简化Eureka Server 的交互,客户端同时也具备一个内置的、使用轮询(round-robin) 负载算法的负载均衡器。在应用启动后,将会向Eureka Server 发送心跳(默认周期为30 秒)。如果Eureka Server 在多个心跳周期内没有接收到某个节点的心跳,EurekaServer 将会从服务注册表中把这个服务节点移除(默认90 秒)。
服务治理介绍
Eureka 实现服务治理
在传统的rpc 远程调用框架中,管理每个服务与服务之间依赖关系比较复杂,管理困难,所以需要治理服务之间依赖关系。
服务治理实现服务调用、负载均衡、容错等,实现服务发现与注册。
感兴趣的可以看看分布式开发: https://jingyan.baidu.com/article/46650658def479f549e5f83e.html
服务注册和发现
😄总结
-
Eureka采用了CS[client-server-java基础我们讲过一个多人聊天项目]的设计架构,Eureka Server 作为服务注册功能的服务器,它是服务注册中心。
-
系统中的其他微服务,使用Eureka的客户端连接到Eureka Server并维持心跳连接,通过Eureka Server 来监控系统中各个微服务是否正常运行。
-
在服务注册与发现中,有一个注册中心。当服务器启动的时候,会把当前自己服务器的信息比如服务地址通讯地址等以别名方式注册到注册中心上。
-
服务消费者或者服务提供者,以服务别名的方式去注册中心上获取到实际的服务提供者通讯地址,然后通过RPC调用服务。
😁热门专栏推荐
Spring Cloud–从零开始搭建微服务基础环境
带你了解SpringBoot—开启Durid 监控
SpringBoot—内置Tomcat 配置和切换
文章到这里就结束了,如果有什么疑问的地方请指出,诸大佬们一起来评论区一起讨论😁
希望能和诸大佬们一起努力,今后我们一起观看感谢您的阅读🍻
如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力🤞