1 SpringCloud介绍


简介

  1. SpringCloud基于SpringBoot提供了一套微服务解决方案,它为开发者提供了很多工具,用于快速构建分布式系统的一些通用模式;
  2. SpringCloud是分布式微服务架构下的一站式解决方案,是各个微服务架构落地技术的集合体,俗称微服务全家桶

主要涉及的组件

  • Eureka:服务注册和发现组件
  • Feign:服务调用
  • Hystix:熔断器
  • Zuul:服务网关
  • Ribbon:负载均衡
  • Config:配置中心

区别

SpringCloud和SpringBoot的区别:

  • SpringBoot专注于快速、方便的开发单个个体微服务
  • SpringCloud是关注全局的微服务协调治理框架,它将SpringBoot开发的一个个单体微服务整合并管理起来
  • SpringBoot可以离开SpringCloud独立使用开发项目,但是SpringCloud离不开SpringBoot,属于依赖的关系

SpringCloud与Dubbo的区别:

  • SpringCloud抛弃了Dubbo的RPC通信,采用的是HTTP的REST方
  • REST相比RPC更为灵活,服务提供方和调用方的依赖只依靠一纸契约,不存在代码级别的强依赖,这在强调快速演化的微服务环境下显得更为合适
  • SpringCloud能够与Spring Framework、 SpringBoot、SpringData等项目完美融合,进而提供分布式微服务架构下的一站式解决方案
  • Dubbo需要借助第三方的框架来构建微服务架构

Q.E.D.