Spring Cloud项目一览表

Spring Cloud提供了一系列开发分布式系统的组件(如:配置管理、服务发现、断路器、智能路由、微代理、控制总线、一次性令牌、全局锁定、领导选举、分布式会话、集群状态)。

使用Spring Cloud可以快速实现分布式微服务架构的目标。Spring Cloud专注于为典型的用例,提供良好的开箱即用体验,并为特殊场景提供扩展机制。

Spring Cloud基于Spring Boot进行项目构建,能够非常方便的调整项目的技术选型,通常只需引入相应的依赖包,并加入一些注释(annotation),即可获得相应组件的支持,为快速集成成为可能。

Spring Cloud解决方案

Spring Cloud从构建分布式微服务出发,为这类架构提供典型的解决方案,Spring Cloud所提供的解决方案包括:配置管理、服务发现、断路器、智能路由、微代理、控制总线、一次性令牌、全局锁定、领导选举、分布式会话、集群状态。

Spring Cloud Config

集中式外部配置管理,可以通过git仓库来管理配置数据项。 配置数据可以被直接被Spring的Environment组件读取。

Spring Cloud Netflix

包装了由Netflix提供的分布式解决方案中所用到的组件,如Eureka, Hystrix, Zuul, Archaius等。

Spring Cloud Bus

将服务和服务实例通过分布式消息连接在一起的事件总线,用于跨群集传播状态更改(例如,配置更改事件)。

Spring Cloud for Cloud Foundry

方便将应用程序与Pivotal Cloud Foundry集成。 提供服务发现的功能,还可以轻松实现SSO和OAuth2功能。

Spring Cloud Open Service Broker

为开放式服务代理提供了方便,开放式服务代理是指云平台提供商(Pivotal,Google,IBM,Red Hat)和Spring Cloud应用之间的接口,开放式服务代理标准是一家开放组织。

Spring Cloud Cluster

为Zookeeper,Redis,Hazelcast,Consul这类工具,提供领导选举和常见状态模式的抽象和实现。

Spring Cloud Consul

为Hashicorp公司的服务发现和配置管理产品Consul提供的接入API。

Spring Cloud Security

基于Zuul这类的代理网关,提供负载平衡、OAuth2、rest client和通过header方式进行的身份验证。

Spring Cloud Sleuth

为Spring Cloud应用程序提供的分布式跟踪组件,并且兼容Zipkin,HTrace和基于日志(例如ELK)跟踪的这类工具。

Spring Cloud Data Flow

是用于构建数据集成和实时数据处理管道的工具包。管道由Spring Boot应用程序组成,使用Spring Cloud Stream或Spring Cloud Task微服务框架构建。这使得Spring Cloud Data Flow适用于各种数据处理用例,从导入/导出到事件流和预测分析。

Spring Cloud Data Flow使用Spring Cloud Deployer将管道部署到现代化服务器运行时环境中,例如Cloud Foundry,Kubernetes,Apache Mesos或Apache YARN。

Spring Cloud Stream

轻量级事件驱动的微服务框架,可快速构建连接到外部系统的应用程序。 在Spring Boot应用程序之间使用Apache Kafka或RabbitMQ发送和接收消息的简单声明式模型。

Spring Cloud Stream App Starters

Spring Cloud Stream App Starters是基于Spring Boot的Spring Integration应用程序,可提供与外部系统的集成。

Spring Cloud Task

一种短暂生命周期的微服务框架,用于快速构建执行有限数据处理的应用程序。 用于通过简单声明的向Spring Boot应用程序添加功能和非功能性的代码。

Spring Cloud Task允许使用Spring Cloud开发和运行短期微服务,并在云中、本地、甚至在Spring Cloud Data Flow上运行。 
只需添加@EnableTask并将的应用程序作为Spring Boot应用程序(单个应用程序上下文)运行。

Spring Cloud Task App Starters

Spring Cloud Task App Starters是Spring Boot应用程序,可以是任何进程,包括不能永久运行的Spring Batch作业,并且在经过一段有限的数据处理后结束/停止。

Spring Cloud Task Applications可与Spring Cloud Data Flow一起使用,以创建,部署和编排短期数据微服务。

Spring Cloud Zookeeper

使用Apache Zookeeper进行服务发现和配置管理的集成组件。

Spring Cloud for Amazon Web Services

可以与托管的Amazon Web Services(AWS)轻松集成。 它使用Spring的惯用语法和API(如消息传递或缓存API)与AWS提供的服务进行交互。 开发人员可以围绕托管服务构建应用程序,而无需关心基础结构或维护。

Spring Cloud Connectors

可以轻松连接到各种平台的PaaS应用程序,如同连接数据库和消息代理(该项目以前称为“Spring Cloud”)服务那般容易。

Spring Cloud Starters

Spring Boot风格的入门项目,可以简化Spring Cloud用户的依赖管理(作为停产项目在Angel.SR2之后与其他项目合并),可以使用Spring Cloud网站提供的Starters在线服务。

Spring Cloud CLI

Spring Boot CLI插件,用Groovy快速创建Spring Cloud组件应用程序。

Spring Cloud Contract

以模拟其他微服务的方式对微服务进行单元测试/集成测试的框架,在无基础设施要求的前提下达到快速反馈的效果。Spring Cloud Contract包含Spring Cloud Contract Verifier项目,创建了带有Stub Runner的Spring Cloud Contract Verifier,最主要的原因是可以非常快速的得到反馈,而不需要建立完成整个微服务世界。

Spring Cloud Gateway

Spring Cloud Gateway是一款基于Project Reactor的智能可编程路由器。该项目提供了一个用于在Spring MVC之上构建API网关的库。 Spring Cloud Gateway旨在提供一种简单而有效的方式来路由到API,并为他们提供横切关注点,例如:安全性,监控/指标和弹性。

Spring Cloud OpenFeign

Spring Cloud OpenFeign通过自动配置和与Spring Boot应用程序的集成,基于Spring MVC注释或JAX-RS的标识动态的创建接口实现,为微服务架构下服务之间的调用提供了解决方案。

Spring Cloud Pipelines

Spring Cloud Pipelines提供了一个用于部署的管道(Pipelines),确保应用程序可以零停机方式部署并轻松回滚出错的步骤。

Spring Cloud Function

Spring Cloud Function通过以函数方式提升业务逻辑的实现。 它提供的统一编程模型能够支持跨服务器提供商,以及独立运行(本地或PaaS)的能力。