Spring Cloud讲解与Dubbo对比

本人博客:技术栈

SpringCloud 简介
尽管SpringCloud带有 ‘Cloud’ 的字样,但是并不是云计算解决方案,而是在Spring Boot基础上构建的,用于快速构建分布式系统的通用模式的工具集。
使用SpringCloud开发的应用程序非常适合在Docker或者PaaS上部署,所以又叫做云原生应用。云原生可以简单理解为面向云环境的软件框架。
Spring Cloud 特点

  • 约定优于配置
  • 适用于各种环境
  • 隐藏了组件的复杂性
  • 开箱即用
  • 轻量级的组件
  • 组件丰富
  • 选型中立、丰富
  • 灵活
    学习SpringCloud 技术储备
    SpringCloud并不是面向零基础开发人员,它有一定的学习曲线。
  • 语言基础:SpringCloud是基于java语言的工具套件,一定要有java基础。
  • SpringBoot:SpringCloud是基于SpringBoot构建的,因此它延续了SpringBoot的契约模式以及开发方式。
  • 项目管理与构建工具: 目前业界比较主流的项目管理与构建工具有Maven和Gradle等,我个人使用的是Maven
    SpringCloud/SpringBoot版本兼容性
  • Angel版本基于SpringBoot1.2.x构建,在一些场景下,与SpringBoot1.3.x及以上版本不兼容。
  • Brixton版本基于SpringBoot1.3.x构建,也可使用1.4.x进行测试,与SpringBoot1.2.x不兼容。
  • Camden版本基于SpringBoot1.4.x构建,也可使用1.5.x进行测试。
  • Dalston版本基于SpringBoot1.5.x构建,不兼容SpringBoot2.0.x。
  • Edgware版本基于SpringBoot1.5.x构建,不兼容SpringBoot2.0.x。
  • Finchley版本基于SpringBoot2.0.x构建,不兼容SpringBoot1.x。
    个人在使用springCloud构建微服务框架的时候感觉还是比较简单的,相对于使用阿里云的Dubbo,SpringCloud提供了很多的组件,有自己的注册中心,Dubbo使用zookeeper做自己的注册中心,SpringCloud有自己的网关、配置中心、服务跟踪、消息总线等,Dubbo是没有的,相对于SpringCloud的断路器HystrixDubbo也不完善。
 DubboSpring Cloud
服务注册中心ZookeeperSpring Cloud Netflix Eureka
服务调用方式RPCREST API
服务监控Dubbo-monitorSpring Boot Admin
断路器不完善Spring Cloud Netflix Hystrix
服务网关Spring Cloud Netflix Zuul
分布式配置Spring Cloud Config
服务跟踪Spring Cloud Sleuth
消息总线Spring Cloud Bus
数据流Spring Cloud Stream
批量任务Spring Cloud Task

最大的区别:Spring Cloud抛弃了Dubbo 的RPC通信,采用的是基于HTTP的REST方式。
严格来说,这两种方式各有优劣。虽然在一定程度上来说,后者牺牲了服务调用的性能,但也避免了上面提到的原生RPC带来的问题。而且REST相比RPC更为灵活,服务提供方和调用方的依赖只依靠一纸契约,不存在代码级别的强依赖,这在强调快速演化的微服务环境下,显得更为合适。
总结:
Dubbo和Spring Cloud并不是完全的竞争关系,两者所解决的问题域不一样:Dubbo的定位始终是一款RPC框架,而Spring Cloud的目的是微服务架构下的一站式解决方案。
非要比较的话,Dubbo可以类比到Netflix OSS技术栈,而Spring Cloud集成了Netflix OSS作为分布式服务治理解决方案,但除此之外Spring Cloud还提供了包括config、stream、security、sleuth等分布式服务解决方案。
当前由于RPC协议、注册中心元数据不匹配等问题,在面临微服务基础框架选型时Dubbo与Spring Cloud只能二选一,这也是两者总拿来做对比的原因。
Dubbo之后会积极寻求适配到Spring Cloud生态,比如作为SpringCloud的二进制通讯方案来发挥Dubbo的性能优势,或者Dubbo通过模块化以及对http的支持适配到Spring Cloud

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值