• 什么是SpringCloud Eureka服务注册与发现


    😀前言
    本篇博文是关于SpringCloud Eureka 介绍,希望你能够喜欢

    🏠个人主页晨犀主页
    🧑个人简介:大家好,我是晨犀,希望我的文章可以帮助到大家,您的满意是我的动力😉😉

    💕欢迎大家:这里是CSDN,我总结知识的地方,欢迎来到我的博客,感谢大家的观看🥰
    如果文章有什么需要改进的地方还请大佬不吝赐教 先在此感谢啦😊

    SpringCloud Eureka 服务注册与发现

    Eureka 介绍

    学Eureka 前的说明

    1、Spring Cloud 组件选型- 图

    image-20230827072440525

    2、从上图可以看出, 目前主流的服务注册&发现的组件是Nacos, 但是Eureka 作为一个老牌经典的服务注册&发现技术还是有必要学习一下, 原因

    (1) 一些早期的分布式微服务项目使用的是Eureka, 小伙伴在工作中, 完全有可能遇到这种情况.

    (2) 后期的服务注册&发现组件/技术, 都参考了Eureka 设计和理念, 学习了Eureka 后, 我们上手Nacos 容易很多,而且理解的更深刻.

    当前项目架构问题分析-引出Eureka

    架构分析示意图

    image-20230827072619259

    对问题分析

    1.在企业级项目中,服务消费访问请求会存在高并发

    2.如果只有一个会员中心-提供服务,可用性差

    3.所以,会员中心提供服务往往是一个集群,也就是说会有多个会员中心-提供服务微服务模块

    4.那么这个时候,就存在一个问题就是服务消费方,怎么去发现可以使用的服务

    5.当服务消费方,发现了可以使用的服务后(可能是多个,又存在一个问题就是到底调用A服务,还是B 服务的问题,这就引出了服务注册和负载均衡)

    6.Eureka 就可以解决上述问题

    引入Eureka 项目架构

    架构剖析图

    image-20230827072728430

    解读
    1. 会员中心-提供服务的,在项目中,会做成集群,提供高可用。
    2. Eureka Server 有必要的话,也可以做成集群。
    3. Eureka 包含两个组件∶Eureka Server 和Eureka Client。
    4. Eureka Server 提供注册服务, 各个微服务节点通过配置启动后,会在Eureka Server 中进行注册,这样EurekaServer 中的服务注册表中将会存储所有可用服务节点的信息,服务节点的信息可以在界面中直观看到。
    5. EurekaClient 通过注册中心进行访问, 是一个Java 客户端,用于简化Eureka Server 的交互,客户端同时也具备一个内置的、使用轮询(round-robin) 负载算法的负载均衡器。在应用启动后,将会向Eureka Server 发送心跳(默认周期为30 秒)。如果Eureka Server 在多个心跳周期内没有接收到某个节点的心跳,EurekaServer 将会从服务注册表中把这个服务节点移除(默认90 秒)。

    服务治理介绍

    Eureka 实现服务治理

    在传统的rpc 远程调用框架中,管理每个服务与服务之间依赖关系比较复杂,管理困难,所以需要治理服务之间依赖关系。

    服务治理实现服务调用、负载均衡、容错等,实现服务发现与注册。

    感兴趣的可以看看分布式开发: https://jingyan.baidu.com/article/46650658def479f549e5f83e.html

    服务注册和发现

    image-20230827073433199

    😄总结

    1. Eureka采用了CS[client-server-java基础我们讲过一个多人聊天项目]的设计架构,Eureka Server 作为服务注册功能的服务器,它是服务注册中心。

    2. 系统中的其他微服务,使用Eureka的客户端连接到Eureka Server并维持心跳连接,通过Eureka Server 来监控系统中各个微服务是否正常运行。

    3. 在服务注册与发现中,有一个注册中心。当服务器启动的时候,会把当前自己服务器的信息比如服务地址通讯地址等以别名方式注册到注册中心上。

    4. 服务消费者或者服务提供者,以服务别名的方式去注册中心上获取到实际的服务提供者通讯地址,然后通过RPC调用服务。

    😁热门专栏推荐
    Spring Cloud–从零开始搭建微服务基础环境
    带你了解SpringBoot—开启Durid 监控
    SpringBoot—内置Tomcat 配置和切换

    文章到这里就结束了,如果有什么疑问的地方请指出,诸大佬们一起来评论区一起讨论😁
    希望能和诸大佬们一起努力,今后我们一起观看感谢您的阅读🍻
    如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力🤞

  • 相关阅读:
    前缀,后缀表达式(逆波兰表达式),中缀表达式转为对应的后缀表达式,逆波兰计算器的实现(java)
    图像处理之图像的几何变换
    蓝桥杯:子串分值
    cmd常用命令
    mysql实战之使用软链接迁移数据目录
    Ubuntu Studio 23.10发布
    Java并发编程学习:volatile关键字解析
    【Python & turtle】绘制一个有趣的的Emoticons
    刷题日记【第八篇】-笔试必刷题【查找输入整数二进制中1的个数+手套+完全数计算+扑克牌大小】
    在iPhone上恢复已删除的Safari历史记录的最佳方法
  • 原文地址:https://blog.csdn.net/m0_73557631/article/details/132683435