【云原生】Spring Cloud是什么?Spring Cloud版本如何选择

举报
Java李杨勇 发表于 2022/06/27 11:48:28 2022/06/27
【摘要】 什么是SpringCloud上一章节介绍了总体的SpringCloud的总体学习章节,因为最近项目刚好需要用到SpringCloud来搭建微服务项目、所以就跟着大家一起来再学习巩固下SpringCloud的相关知识SpringCloud是基于SpringBoot框架提供了一套微服务应用解决方案,主要包括服务注册与发现,全链路监控,配置中心,服务网关,负载均衡配置,熔断器等组件、除了基于Ne...

什么是SpringCloud

上一章节介绍了总体的SpringCloud的总体学习章节,因为最近项目刚好需要用到SpringCloud来搭建微服务项目、所以就跟着大家一起来再学习巩固下SpringCloud的相关知识

SpringCloud基于SpringBoot框架提供了一套微服务应用解决方案,主要包括服务注册与发现,全链路监控,配置中心,服务网关,负载均衡配置,熔断器等组件、除了基于NetFlix的开源组件做的高度抽象封装之外,还有一些选型中立的开源组件。在官网可以看见主要核心模块如下:

Eureka:服务注册中心,用于服务管理。

Ribbon:基于客户端的负载均衡组件。

Feign:Web 服务客户端,能够简化 HTTP 接口的调用。

Hystrix:容错框架,能够防止服务的雪崩效应。

Zuul:API 网关,提供路由转发、请求过滤等功能。

Config:分布式配置管理。

Stream:构建消息驱动的微服务应用程序的框架。

Sleuth:服务跟踪调用链解决方案。

Bus:消息代理的集群消息总线。

在实际开发中找到并合理使用这一套技术呢?

其实就是首先要确认自己需要什么找什么技术,但是这样会有一个问题,技术和技术之间往往都会有一些兼容性的问题,要解决这些问题,需要很强的技术示例,一般的中小型企业一般没有这样的实力和实际使用场景。

还有一些有实力的公司会自己寻找一整套技术,并且做一些封装和整合,然后开源让大家使用。SpringCloud就是这样的技术,SpringCloud是官方封装好的一整套分布式微服务的技术解决方案,我们也称之为微服务全家桶。

举一个简单的例子吧、开发微服务相当于自己买零件部件这些、然后进行组装

使用SpringCloud其实就是相当于直接买了一整台电脑、系统等都配置好了、直接使用、这样虽然能够直接使用、但很多细节需要自己在使用的过程中进行研究、慢慢熟悉。

Spring Cloud版本介绍

SpringCloud 和 SpringBoot的关系

用过SpringBoot的小伙伴都知道,SpringBoot开发之所以方便快捷,就是因为SpringBoot自动配置/和集成、比如yml配置Tomcat、热部署、以及pom.xml mavenY以来这些可以直接引入需要的插件和API、可以让我们在开发的时候不写基本的配置,通过完美的封装引入让应用可以做到一键启动和部署,而SpringCloud是对多个技术整合和配置、其实最复杂的过程往往是配置。

所以SpringCloud选择SpringBoot作为技术底层,对目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,进行二次封装,屏蔽掉了复杂的配置和实现原理。我们使SpringCloud像使用SpringBoot一样的简单。

访问 Spring Cloud 官网时一定会有一个疑惑那就是版本太多了,到底哪个是稳定版本?哪个才是自己需要的版本?因为我SpringBoot是2.0、所以我选择的是SpringCloud的Finchley 版本

SpringCloud和SpringBoot的版本选择:Spring Cloud https://spring.io/projects/spring-cloud/

不明白的可以看下这个表格!通过这个表格我们可以清楚地知道 Finchley SR2 对应的 Spring Boot 版本是 2.0.6.RELEASE,Spring-Cloud-Bus 是 2.0.0.RELEASE。

Component Edgware.SR5 Finchley.SR2 Finchley.BUILD-SNAPSHOT
spring-cloud-aws 1.2.3RELEASE 2.0.1.RELEASE 2.0.1.BUILD-SNAPSHOT
spring-cloud-bus 1.3.3.RELEASE 2.0.0.RELEASE 2.0.1.BUILD-SNAPSHOT
spring-cloud-cli 1.4.1.RELEASE 2.0.0.RELEASE 2.0.1.BUILD-SNAPSHOT
spring-cloud-commons 1.3.5.RELEASE 2.0.2.RELEASE 2.0.2.BUILD-SNAPSHOT
spring-cloud-contract 1.2.6.RELEASE 2.0.2.RELEASE 2.0.2.BUILD-SNAPSHOT
spring-cloud-config 1.4.5.RELEASE 2.0.2.RELEASE 2.0.2.BUILD-SNAPSHOT
spring-cloud-netflix 1.4.6.RELEASE 2.0.2.RELEASE 2.0.2.BUILD-SNAPSHOT
spring-cloud-security 1.2.3.RELEASE 2.0.1.RELEASE 2.0.1.BUILD-SNAPSHOT
spring-cloud-cloudfoundry 1.1.2.RELEASE 2.0.1.RELEASE 2.0.1.BUILD-SNAPSHOT
spring-cloud-consul 1.3.5.RELEASE 2.0.1.RELEASE 2.0.2.BUILD-SNAPSHOT
spring-cloud-sleuth 1.3.5.RELEASE 2.0.2.RELEASE 2.0.2.BUILD-SNAPSHOT
spring-cloud-stream Ditmars.SR4 Elmhurst.SRI Elmhurst. BUILD-SNAPSHOT
spring-cloud-zookeeper 1.2.2.RELEASE 2.0.0.RELEASE 2.0.1.BUILD-SNAPSHOT
spring-boot 1.5.16.RELEASE 2.0.6.RELEASE 2.0.7.BUILD-SNAPSHOT
spring-cloud-task 1.2.3.RELEASE 2.0.0.RELEASE 2.0.1.BUILD-SNAPSHOT
spring-cloud-vault 1.1.2.RELEASE 2.0.2.RELEASE 2.0.2.BUILD-SNAPSHOT
spring-cloud-gateway 1.0.2.RELEASE 2.0.2.RELEASE 2.0.2.BUILD-SNAPSHOT

大家点赞、收藏、关注、评论啦 、

打卡 文章 更新 268/  365天

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。