1、概述
Spring Cloud是一系列框架的有序集合,它利用Spring Boot的开发便利性简化了分布式系统的开发,比如服务发现、服务网关、服务路由、链路追踪等。Spring Cloud并不重复造*,而是将市面上开发的比较好的模块集成进去,进行封装,从而减少了各模块的开发成本。换句话说:Spring Cloud提供了构建分布式系统所需的“全家桶”。
2、优缺点
- 集大成者,Spring Cloud包含了微服务架构的方方面面。
- 约定优于配置,基于注解,没有配置文件
- 轻量级组件,Spring Cloud整合的组件大多比较轻量级,且都是各自领域的佼佼者。
- 开发简便,Spring Cloud对各个组件进行了大量的封装,从而简化了开发。
- 开发灵活,Spring Cloud的组件都是解耦的,开发人员可以灵活按需选择组件
3、与Dubbo的对比
Dubbo只是实现了服务治理,而Spring Cloud实现了微服务架构的方方面面,服务治理只是其中的一个方面。
Dubbo | SpringCloud | |
服务注册中心 | Zookeeper | Spring Cloud Netfix Eureka |
服务调用方式 | RPC | REST API |
服务监控 | Dubbo-monitor | Spring Boot Admin |
熔断器 | 不完善 | Spring Cloud Netflix Hystrix |
服务网关 | 无 | Spring Cloud Netflix Zuul |
分布式配置 | 无 | Spring Cloud Config |
服务跟踪 | 无 | Spring Cloud Sleuth |
数据流 | 无 | Spring Cloud Stream |
批量任务 | 无 | Spring Cloud Task |
信息总线 | 无 | Spring Cloud Bus |