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

为服务发现和配置管理产品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)的能力。