SpringCloud概述

简介: /

1.SpringCloud诞生
基于前面章节,我们深知微服务已成为当前开发的主流技术栈,但是如dubbo、zookeeper、nacos、rocketmq、rabbitmq、springboot、redis、es这般众多技术都只解决了一个或一类问题,微服务并没有一个统一的解决方案。开发人员或架构师想要做架构设计或系统拆分时,还需要深度调研技术选项。那么有没有一个技术可以一呼百应,做到一个彻底的解决方案呢?于是Spring团队推出了他们的微服务解决方案-Spring Cloud。

2.SpringCloud特点
作为一款优秀的微服务解决方案,其主要特点如下
约定大于配置
组件丰富,功能齐全
灵活,开箱即用,快速启动
完美适配云环境软件架构的云原生应用
3.SpringCloud版本
Spring-Cloud的github仓库:https://github.com/spring-cloud
大多数Spring项目版本号是:主版本号.次版本号.增量版本号.里程碑版本号,如Spring版本:4.3.1.RELEASE,其中主版本号标识重大重构,次版本号标识新特性调整,增量版本号一般标识bug-fix,里程碑则标识某版本号的里程碑,也可以没有。
Spring Cloud通过伦敦地铁站的形式进行命名,如下Hoxton.SR12(Hoxton:主版本号,SR:Service Release,X数字:次版本号)。

RELEASE TRAIN

BOOT VERSION

2022.0.X AKA KILBURN

3.0.X

2021.0.X AKA JUBILEE

2.6.X,2.7.X(STARTING WITH 2021.0.3)

2.4.X,2.5.X (STARTING WITH 2020.0.3)

2020.0.X AKA LLFORD

2.2.X,2.3.X(STARTING WITH SR5)

HOXTON

2.1.X

GREENWICH

FINCHLEY

2.0.X

1.5.X

EDGWARE

1.5.X

DALSTON


因为Spring Cloud是一个大综合性的项目,包含很多子项目,由于子项目也维护着自己的版本号,所以通过这种命名形式定义版本号,避免与子项目版本冲突。
更多Spring Cloud版本演进计划请移步:github里程碑仓库
4.SpringCloud子项目
https://spring.io/projects/spring-cloud#overview

HEAR FROM THE SPRING TEAM THIS JANUARY AT SPRINGONE.>

SPRING

PROJECTS

TRAINING

COMMUNITY

WHY SPRING

SUPPORT

LEARN

BY VMWARE TANZU

SPRING CLOUD

SPRING BOOT

2022.0.0

SPRING FRAMEWORK

SPRING DATA

LEARN

SAMPLES

OVERVIEW

SPRING CLOUD

SPRING CLOUD AZURE

SPRING CLOUD PROVIDES TOOLS FOR DEVELOPERS TO QUICKLY BUILD SOME OF THE COMMON PATTERNS IN DISTRIBUTE

SPRING CLOUD ALIBABA

SYSTEMS (E.S. CONFIGURATION MANAGEMENT SERVICE DISCOVERY, CIRCUIT BREAKERS, INTELLIGENT ROUTING, MICR

SPRING CLOUD FOR AMAZON

WEB SERVICES

PROXY,CONTROL BUS,ONE-TIME TOKENS.GLOBAL LOCKS, LEADERSHIP ELECTION, DISTRIBUTED SESSIONS,CLUSTE),

COORDINATION OF DISTRIBUTED SYSTEMS LEADS TO BOILER PLATE PATTERNS, AND USING SPRING CLOUD DEVELOPER

SPRING CLOUD BUS

QUICKLY STAND UP SERVICES AND APPLICATIONS THAT IMPLEMENT THOSE PATTERNS. THEY WILL WELL IN ANY

SPRING CLOUD CIRCUIT BREAKER

DISTRIBUTED ENVIRONMENT INCLUDING THE DEVELOPERS OWN LAPTOP, BARE METAL DATAL DATA CEND MANAGED

SPRING CLOUD CLI

PLATFORMS SUCH AS CLOUD FOUNDRY.

SPRING CLOUD FOR CLOUD

FOUNDRY

FEATURES

SPRING CLOUD-CLOUD

FOUNDRY SERVICE BROKER

SPRING CLOUD FOCUSES ON PROVIDING GOOD OUT OUT OF BOX EXPERIENCE FOR TYPICAL USES AND EXTENSIBILITY

SPRING CLOUD COMMONS

MECHANISM TO COVER OTHERS.

SPRING CLOUD CONFIG

DISTRIBUTED/VERSIONED CONFIGURATION

SPRING CLOUD CONNECTORS

SPRING CLOUD CONSUL

SERVICE REGISTRATION AND DISCOVERY

SPRING CLOUD CONTRACT

ROUTING

SPRING CLOUD FUNCTION

SPRING CLOUD GATEWAY

SERVICE-TO-SERVICE CALLS

SPRING CLOUD GCP

LOAD BALANCING

SPRING CLOUD KUBERNETES

CIRCUIT BREAKERS

SPRING CLOUD NETFLIX

SPRING CLOUD OPEN SERVICE

GLOBAL LOCKS

BROKER

SPRING CLOUD OPENFEIGN

LEADERSHIP ELECTION AND CLUSTER STATE


5.SpringCloud/SpringBoot版本兼容关系

RELEASE TRAIN

BOOT VERSION

2.4.X

2020.0.X AKA LLFORD

2.2.X,2.3.X(STARTING WITH SR5)

HOXTON

2.1.X

GREENWICH

FINCHLEY

2.0.X

EDGWARE

1.5.X

DALSTON

1.5.X


6.SpringCloud Alibaba诞生
随着淘系业务的发展,阿里巴巴内部针对Spring Cloud做了自身吸收后,也贡献出优秀的Spring Cloud Alibaba解决方案,应运而生孵化出如Nacos这般优秀的中间件,并被Spring Cloud官方认可。至此Spring Cloud作为微服务解决方案的实际落地场景得到了更为强有力的论证,落地方案也就清晰明了

技术

Spring Cloud官方套件或第三方套件

Alibaba套件

Netflix套件

服务注册与服务发现

Consul、Zookeeper

Nacos

Eureka

配置中心

Spring Cloud Config

Nacos

服务通信

Open Feign

Dubbo

Feign

负载均衡器

Loadbalancer

Ribbon

服务网关

Spring Cloud Gateway

Zuul

断路器

Resilience4j

Sentinel

Hystrix

链路追踪

Spring Cloud Sleuth、Zipkin

分布式事务

Seata

Spring Cloud Alibaba提供的核心组件如下:
Sentinel:阿里开源产品,可作为断路器,也支持流量控制和服务降级。
Nacos:阿里开源产品,服务注册与服务发现,同时也可作为配置中心。
RocketMQ:阿里开源的分布式消息和流计算平台。
Dubbo:阿里开源产品,高性能Java RPC框架,服务通信组件。
Seata:阿里开源产品,一个易使用的高性能微服务分布式事务解决方案。
7.为什么选择SpringCloud Alibaba
基于上述描述,读者应该会发现SpringCloud可以选择Alibaba或Netflix套件整合出一套完整解决方案。然后Netflix由于种种原因退出了维护更新的舞台,后续SpringCloud也逐步将其提供的组件一一剔除。
依附着阿里2015-2020的黄金飞速发展,Alibaba与Spring Cloud社区的强强联合,更多、更为全面的解决方案经过无数次的验证是真实可行的,同时阿里提供的开源产品保证了SpringCloud的功能又得到了进一步的补充。
所以最终我们也将选择SpringCloud Alibaba作为技术栈进行学习和演练。
8.总结
本节笔者介绍了SpringCloud诞生的由来,以及目前国内主要流行的SpringCloud Alibaba与SpringCloud的关系,同时针对SpringCloud自身的特点、版本号、依赖关系做了概要论述,这些都是为了接下来的实战打好基础。
思考问题
SpringCloud特性?
SpringCloud Alibaba与SpringCloud什么关系?
9.推荐阅读资料
浏览Spring Cloud仓库:https://github.com/spring-cloud
浏览Spring Cloud官网:https://spring.io/projects/spring-cloud
截图软件:

xsnip_1.1.0.4.zip(360 KB)

1 人点赞

1

油炸小波

2023-02-14 19:24

1625

0

举报

分享到:

注册 / 登录 语雀进行评论

关于语雀使用帮助数据安全服务协议English快速注册

油炸小波

微服务技术栈

搜索Ctrl + J

首页

目录

Git代码提交规范

什么是RESTful

负载均衡算法

Jmeter快速入门

@RefreshScope热更新原理

什么是跨域

什么是WebFlux

虚拟机安装(CentOS7)

基础篇

持久层框架MyBatisPlus

微服务框架SpringCloud

微服务概述

SpringCloud概述

SpringCloud工程部署启动

Eureka服务注册与发现

Ribbon负载均衡

Nacos注册中心

练习

Nacos配置中心

Feign远程调用

Gateway服务网关

练习

容器引擎Docker

消息中间件RabbitMQ(基础)

高级篇

SpringCloud(2025)

大纲

1.SpringCloud诞生

2.SpringCloud特点

3.SpringCloud版本

4.SpringCloud子项目

5.SpringCloud/SpringBoot版本兼容关系

6.SpringCloud Alibaba诞生

7.为什么选择SpringCloud Alibaba

8.总结

9.推荐阅读资料

相关文章
|
5月前
|
存储 JSON 运维
微服务架构下的日志“捕手”:构建高效的日志收集与分析体系
微服务架构下的日志“捕手”:构建高效的日志收集与分析体系
280 8
|
4月前
|
人工智能 Kubernetes Devops
VMware vSphere 8.0 Update 3h 下载 - 企业级工作负载平台
VMware vSphere 8.0 Update 3h 下载 - 企业级工作负载平台
333 0
VMware vSphere 8.0 Update 3h 下载 - 企业级工作负载平台
|
负载均衡 Java 网络架构
在SpringCloud2023中快速集成SpringCloudGateway网关
本文主要简单介绍SpringCloud2023实战中SpringCoudGateway的搭建。后续的文章将会介绍在微服务中使用熔断Sentinel、鉴权OAuth2、SSO等技术。
664 2
在SpringCloud2023中快速集成SpringCloudGateway网关
|
消息中间件 JSON Java
Spring Boot、Spring Cloud与Spring Cloud Alibaba版本对应关系
Spring Boot、Spring Cloud与Spring Cloud Alibaba版本对应关系
34249 1
|
应用服务中间件 nginx 微服务
SpringCloud解决feign调用token丢失问题
【5月更文挑战第2天】在feign调用中可能会遇到如下问题: * 同步调用中,token丢失,这种可以通过创建一个拦截器,将token做透传来解决 * 异步调用中,token丢失,这种就无法直接透传了,因为子线程并没有**token**,这种需要先将token从父线程传递到子线程,再进行透传
1736 3
|
移动开发 安全 虚拟化
VMware ESXi 8.0U2d 发布下载 - 领先的裸机 Hypervisor
VMware ESXi 8.0U2d 发布下载 - 领先的裸机 Hypervisor
824 1
|
JSON Java 网络架构
elasticsearch学习四:使用springboot整合 rest 进行搭建elasticsearch服务
这篇文章介绍了如何使用Spring Boot整合REST方式来搭建和操作Elasticsearch服务。
460 4
elasticsearch学习四:使用springboot整合 rest 进行搭建elasticsearch服务
|
存储 缓存 Java
Spring缓存注解【@Cacheable、@CachePut、@CacheEvict、@Caching、@CacheConfig】使用及注意事项
Spring缓存注解【@Cacheable、@CachePut、@CacheEvict、@Caching、@CacheConfig】使用及注意事项
4786 2
|
SQL Java Unix
Android经典面试题之Java中获取时间戳的方式有哪些?有什么区别?
在Java中获取时间戳有多种方式,包括`System.currentTimeMillis()`(毫秒级,适用于日志和计时)、`System.nanoTime()`(纳秒级,高精度计时)、`Instant.now().toEpochMilli()`(毫秒级,ISO-8601标准)和`Instant.now().getEpochSecond()`(秒级)。`Timestamp.valueOf(LocalDateTime.now()).getTime()`适用于数据库操作。选择方法取决于精度、用途和时间起点的需求。
422 3

热门文章

最新文章