Spring Cloud之Spring Cloud简介

Spring Cloud简介

Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线)。分布式系统的协调导致了样板模式, 使用Spring Cloud开发人员可以快速地支持实现这些模式的服务和应用程序。他们将在任何分布式环境中运行良好,包括开发人员自己的笔记本电脑,裸机数据中心,以及Cloud Foundry等托管平台。

Spring Cloud版本说明

SpringCloud官网,在SpringCloud官网中明确了有这样的版本分布

Release Train Boot Version
Hoxton 2.2.x
Greenwich 2.1.x
Finchley 2.0.x
Edgware 1.5.x
Dalston 1.5.x

在spring cloud版本中G版本是稳定版本,右边对应的是springboot的版本,H版本现在不是很稳定,是快照版本,对应它的spring boot版本需要2.2以上

Spring Cloud的组成

Spring Cloud的子项目,大致可分成两类,一类是对现有成熟框架”Spring Boot化”的封装和抽象,也是数量最多的项目;第二类是开发了一部分分布式系统的基础设施的实现,如Spring Cloud Stream扮演的就是kafka, ActiveMQ这样的角色。对于我们想快速实践微服务的开发者来说,第一类子项目就已经足够使用,如:
Spring Cloud Netflix
  是对Netflix开发的一套分布式服务框架的封装,包括服务的发现和注册,负载均衡、断路器、REST客户端、请求路由等。
Spring Cloud Config
  将配置信息中央化保存, 配置Spring Cloud Bus可以实现动态修改配置文件
Spring Cloud Bus
  分布式消息队列,是对Kafka, MQ的封装
Spring Cloud Security
  对Spring Security的封装,并能配合Netflix使用
Spring Cloud Zookeeper
  对Zookeeper的封装,使之能配置其它Spring Cloud的子项目使用
Spring Cloud Eureka
Spring Cloud Eureka 是 Spring Cloud Netflix 微服务套件中的一部分,它基于Netflix Eureka 做了二次封装,主要负责完成微服务架构中的服务治理功能。

Spring Cloud的特性

Spring Cloud专注于提供良好的开箱即用经验的典型用例和可扩展性机制覆盖。

1、分布式/版本化配置

2、服务注册和发现

3、路由

4、service - to - service调用

5、负载均衡

6、断路器

7、分布式消息传递

Spring Cloud与Dubbo的对比

Dubbo实现了服务治理,常常用作分布式协调服务,而Spring Cloud 实现了微服务架构的各方面,服务治理只是这其中的一小部分,下面通过一张表来对比Spring Cloud与Dubbo之间的不同点

对比点 Dubbo SpringCloud
服务注册中心 Zookeeper、Redis Spring Cloud Netflix Eureka
服务调用方式 RPC REST API
服务网关 - Spring Cloud Netflix Zuul
断路器 不完善 Spring Cloud Netflix Hystrix
分布式配置 - Spring Cloud Config
分布式跟踪系统 - Spring Cloud Sleuth
消息总线 - Spring Cloud Bus
数据流 - Spring Cloud Stream 基于Redis、Rabbit、Kafka实现的消息微服务
批量任务 - Spring Cloud Task

Spring Cloud的前景

Spring Cloud对于中小型互联网公司来说是一种福音,因为这类公司往往没有实力或者没有足够的资金投入去开发自己的分布式系统基础设施,使用Spring Cloud一站式解决方案能在从容应对业务发展的同时大大减少开发成本。同时,随着近几年微服务架构和Docker容器概念的火爆,也会让Spring Cloud在未来越来越“云”化的软件开发风格中立有一席之地,尤其是在目前五花八门的分布式解决方案中提供了标准化的、全站式的技术方案,意义可能会堪比当年Servlet规范的诞生,有效推进服务端软件系统技术水平的进步。

发布了207 篇原创文章 · 获赞 87 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/zhouym_/article/details/100169655