项目一览表
- 简介
- 1. Spring Cloud Config : 服务配置中心
- 2. Spring Cloud Netflix : 封装了Netflix公司的微服务组件,包括Eureka、Hystrix、Zuul、Archaius等
- 2.1 Eureka: 服务注册与发现组件
- 2.2 Hystrix: 熔断器组件
- 2.3 Zuul:智能路由网关组件
- 2.4 Feign:声明式远程调度组件
- 2.5 Ribbon:负载均衡组件
- 2.6 Archaius:配置管理API的组件,一个基于Java的配置管理库,主要用于多配置的动态获取。
- 3. Spring Cloud Bus:消息总线组件
- 4. Spring Cloud Sleuth:服务链路追踪组件
- 5. Spring Cloud Data Flow:大数据操作组件
- 6. Spring Cloud Security:安全模块组件
- 7. Spring Cloud Consul:对Consul的封装,类似于Eureka
- 8. Spring Cloud Zookeeper:对Zookeeper的封装,类似于Eureka
- 9. Spring Cloud Stream:数据流操作组件
- 10. Spring Cloud CLI:封装CLI
- 11. Spring Cloud Task:基于Spring Task
- 12. Spring Cloud Connectors:用于Paas云平台连接后端。
简介
本文主要介绍Spring Cloud各个组件的大致作用,持续更新。。
1. Spring Cloud Config : 服务配置中心
将所有的服务的配置文件放到本地仓库或者远程仓库,配置中心负责读取仓库的配置文件,其他服务向配置中心
读取配置。Spring Cloud Config使得服务的配置统一,并可以在不人为重启服务的情况下进行配置文件的刷新。
动态刷新需要依赖Bus消息总线。
2. Spring Cloud Netflix : 封装了Netflix公司的微服务组件,包括Eureka、Hystrix、Zuul、Archaius等
2.1 Eureka: 服务注册与发现组件
在同一个Eureka Server 服务下注册的不同Client 服务可以互相发现与调用
图为Eureka Server端
2.2 Hystrix: 熔断器组件
Hystrix通过控制服务的API接口的熔断来转移故障,防止微服务系统发生雪崩效应。Hystrix能够起到服务限
流和服务降级的作用。使用Hystrix Dashboard组件监控单个服务的熔断器状态,使用Turbine组件可以聚合
多个服务的熔断器状态。
2.3 Zuul:智能路由网关组件
Netflix Zuul能够起到只能路由和请求过滤的作用,是服务接口统一暴露的关键模块,也是安全验证、权限
控制的一道门。
2.4 Feign:声明式远程调度组件
2.5 Ribbon:负载均衡组件
2.6 Archaius:配置管理API的组件,一个基于Java的配置管理库,主要用于多配置的动态获取。
3. Spring Cloud Bus:消息总线组件
常和Spring Cloud Config配合使用,用于动态刷新服务的配置。
4. Spring Cloud Sleuth:服务链路追踪组件
封装了Dapper、Zipkin、Kibina等组件,可以实时监控服务的链路调用情况。
5. Spring Cloud Data Flow:大数据操作组件
Spring Cloud Data Flow是Spring XD的替代品,也是一个混合计算的模型,可以通过命令行的方式操作数据流。
6. Spring Cloud Security:安全模块组件
该组件是对Spring Security的封装,通常配合OAuth2来实现保护微服务系统的安全。
7. Spring Cloud Consul:对Consul的封装,类似于Eureka
8. Spring Cloud Zookeeper:对Zookeeper的封装,类似于Eureka
9. Spring Cloud Stream:数据流操作组件
可以封装Redis(缓存NoSql数据库)、RabbitMQ(MQ消息队列实现)、Kafka等组件,实现发送和接受消息。
10. Spring Cloud CLI:封装CLI
以命令行方式快速运行和搭建容器。
11. Spring Cloud Task:基于Spring Task
提供任务调度和任务管理的功能。
12. Spring Cloud Connectors:用于Paas云平台连接后端。