思维导图概览SpringCloud

  • 2.1.6、Gateway

  • 2.1.7、Config

  • 2.1.8、 Bus

  • 2.1.9、OAuth2

  • 2.1.10、Sleuth

  • 3、总结

1、什么是微服务

==========================================================================

1.1、架构演进


架构的发展历程是从单体式架构,到分布式架构,到SOA架构,再到微服务架构。

图1:架构演进

在这里插入图片描述

  • 单体架构:未做任何拆分的Java Web程序

图2:单体架构示意图

在这里插入图片描述

  • 分布式架构:按照业务垂直划分,每个业务都是单体架构,通过API互相调用。

图3:分布式架构示意图

在这里插入图片描述

  • SOA架构:SOA是一种面向服务的架构。其应用程序的不同组件通过网络上的通信协议向其它组件提供服务或消费服务,所以也是分布式架构的一种。

图4:SOA架构示意图

在这里插入图片描述

1.2、微服务架构


微服务架构在某种程度上是SOA架构的进一步的发展。

微服务目前并没有比较官方的定义。微服务 Microservices 之父,马丁.福勒,对微服务大概的概述如下:

就目前而言,对于微服务业界并没有一个统一的、标准的定义(While there is no precise definition of this architectural style ) 。

但通常在其而言,微服务架构是一种架构模式或者说是一种架构风格,它提倡将单一应用程序划分成一组小的服务,每个服务运行独立的自己的进程中,服务之间互相协调、互相配合,为用户提供最终价值。

服务之间采用轻量级的通信机制互相沟通(通常是基于 HTTP 的 RESTful API ) 。每个服务都围绕着具体业务进行构建,并且能够被独立地部署到生产环境、类生产环境等。

另外,应尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据业务上下文,选择合适的语言、工具对其进行构建,可以有一个非常轻量级的集中式管理来协调这些服务。可以使用不同的语言来编写服务,也可以使用不同的数据存储。

图5:微服务定义思维导图

在这里插入图片描述

图6:微服务架构示意图

在这里插入图片描述

1.3、微服务解决方案


目前最流行的两种微服务解决方案是SpringCloud和Dubbo。

2、SpringCloud概览

=================================================================================

2.1、什么是SpringCloud


Spring Cloud 作为 Java 言的微服务框架,它依赖于 Spring Boot ,有快速开发、持续交付和容易部署等特点。 Spring Cloud 的组件非常多,涉及微服务的方方面面,井在开源社区 Spring、Netflix Pivotal 两大公司的推动下越来越完善。

SpringCloud是一系列组件的有机集合。

图7:SpringCloud技术体系

在这里插入图片描述

图8:SpringCloud技术体系思维导图

在这里插入图片描述

2.1、SpringCloud主要组件


2.1.1、Eureka

Netflix Eureka 是由 Netflix 开源的一款基于 REST 的服务发现组件,包括 Eureka Server 及 Eureka Client。

在这里插入图片描述

2.1.2、Ribbon

Ribbon Netflix 公司开源的一个负载均衡的组件。

在这里插入图片描述

2.1.3、Feign

Feign是是一个声明式的Web Service客户端。

在这里插入图片描述

2.1.4、Hystrix

Hystrix是Netstflix 公司开源的一个项目,它提供了熔断器功能,能够阻止分布式系统中出现联动故障。

在这里插入图片描述

2.1.5、Zuul

Zuul 是由 Netflix 孵化的一个致力于“网关 “解决方案的开源组件。

在这里插入图片描述

2.1.6、Gateway

Spring Cloud Gateway 是 Spring 官方基于 Spring 5.0、 Spring Boot 2.0 和 Project Reactor 等

技术开发的网关, Spring Cloud Gateway 旨在为微服务架构提供简单、 有效且统一的 API 路由

管理方式。

在这里插入图片描述

2.1.7、Config

Spring Cloud 中提供了分布式配置中 Spring Cloud Config ,为外部配置提供了客户端和服务器端的支持。
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

一线互联网大厂Java核心面试题库

image

正逢面试跳槽季,给大家整理了大厂问到的一些面试真题,由于文章长度限制,只给大家展示了部分题目,更多Java基础、异常、集合、并发编程、JVM、Spring全家桶、MyBatis、Redis、数据库、中间件MQ、Dubbo、Linux、Tomcat、ZooKeeper、Netty等等已整理上传,感兴趣的朋友可以看看支持一波!
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
.(img-XPU7BcPM-1713685631694)]

正逢面试跳槽季,给大家整理了大厂问到的一些面试真题,由于文章长度限制,只给大家展示了部分题目,更多Java基础、异常、集合、并发编程、JVM、Spring全家桶、MyBatis、Redis、数据库、中间件MQ、Dubbo、Linux、Tomcat、ZooKeeper、Netty等等已整理上传,感兴趣的朋友可以看看支持一波!
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

  • 28
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
很抱歉,我无法直接为您提供思维导图。但是,我可以为您提供一些Spring Cloud的核心组件和功能,并以文字方式进行总结。您可以根据这些信息创建自己的思维导图。 1. 服务注册与发现:Spring Cloud使用服务注册与发现组件(如Eureka、Consul、Zookeeper)来管理和发现微服务实例,实现动态扩展和负载均衡。 2. 负载均衡:Spring Cloud集成了负载均衡组件(如Ribbon、LoadBalancer),可以在多个实例之间分配请求,提高系统的可用性和性能。 3. 分布式配置管理:通过Spring Cloud Config,可以将应用程序的配置集中管理,并支持动态刷新配置,方便应用程序的部署和管理。 4. 服务调用:Spring Cloud使用RestTemplate或Feign来实现服务之间的通信,简化了微服务之间的调用过程。 5. 断路器模式:Spring Cloud集成了Hystrix,通过实现断路器模式,可以在微服务之间进行容错处理,保护系统免受故障和延迟的影响。 6. 服务网关:通过Spring Cloud Gateway或Zuul,可以实现统一的API网关,对外提供统一的入口,并提供路由、过滤、安全性等功能。 7. 分布式追踪:Spring Cloud Sleuth集成了Zipkin,可以实现分布式系统的请求追踪和监控,帮助定位和解决分布式系统中的性能和故障问题。 8. 消息总线:使用Spring Cloud Bus,可以将配置的变更通知到所有微服务实例,实现配置的动态更新和刷新。 这些是Spring Cloud的一些核心组件和功能,您可以根据这些信息来创建自己的思维导图,并深入了解每个组件的详细内容和用法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值