Spring Cloud 简介
什么是Spring cloud
从字面理解,Spring Cloud 就是致力于分布式系统、云服务的框架。
Spring Cloud 是整个 Spring 家族中新的成员,是最近云服务火爆的必然产物。
Spring Cloud 为开发人员提供了快速构建分布式系统中一些常见模式的工具;
- 配置管理
- 服务注册与发现
- 断路器
- 智能路由
- 服务间调用
- 负载均衡
- 微代理
- 控制总线
- 一次性令牌
- 全局锁
- 领导选举
- 分布式会话
- 集群状态
- 分布式消息 …
Spring Cloud 与 Spring Boot
Spring Cloud 基于 Spring Boot 来进行构建服务。这样,开发Spring Cloud 组件时,就能依托 Spring Boot 来实现快速开发。
Spring Cloud 配置及子项目介绍
- Spring Cloud Config:配置中心,利用git来集中管理程序的配置。
- Spring Cloud Netflix:集成众多Netflix的开源软件,包括Eureka,Hystrix,Zuul,Archaius等。
- Spring Cloud Bus:消息总线,利用分布式消息将服务和服务实例连接在一起,用于一个集群中传播状态的变化,比如配置更改的事件。可与Spring Cloud Config联合实现热部署。但是远远不止这些。
- Spring Cloud Cluster(集群)
- 基于Zookeeper/Redis/Hazelcast/Consul实现的领导选举和平民状态模式的抽象和实现。
- Spring Cloud Consul(Consul 本身是一个分布式的协调软件):Spring Cloud 基于Consul实现的服务发现和配置管理。
- Spring Cloud Security:在Zuul代理中为OAuth2 Res客户端和认证头转发提供负载均衡。
- Spring Cloud Sleuth:适用于Spring Cloud 应用程序的分布式跟踪,与Zipkin/Htrace和基于日志的跟踪相兼容。可以日志的收集。