我们来看一下SpringCloud和Dubbo的区别,我们准备了一个表格,会从这五个维度,出身背景,活跃度,文档质量,性能,功能,从5个维度来做SpringCloud和Dubbo的对比

Dubbo它是出自阿里系的,阿里的一个产品,他的核心框架就是服务治理,SpringCloud它是出自Spring社区,核心框架是Netflix开源微服务架构群体,这是他两个出生背景,我们再来看活跃度,我们从三个指标上来做对比,第一个是社区活跃度,第二个是百度指数,第三个是招聘岗位,我们先看第一个社区活跃度,我们先去Dubbo的官网上看一下,他的社区活跃度是否高,现在Dubbo已经迁移到Apache上,所以Dubbo的官网是dubbo.apache.orghttp://dubbo.apache.org/en-us/我们打开了Dubbo的首页,有一个View on githubhttps://github.com/apache/dubbo然后我们来看一下社区活跃度,我们会发现Dubbo更新的频率是比较频繁的,通过这个我们可以看到,Dubbo的社区活跃度还是比较高的,我们再来看看SpringCloud的活跃度,我们还是从github上来看github.com/spring-cloudhttps://github.com/spring-cloud看他的社区活跃度,他的社区活跃度也挺高的,他还比Dubbo的更新频繁更快一些,说明他的活跃度更强一些,没有说隔很长的一个时间,一个月两个月不更新,没有达到这样一个现象,所以从社区活跃度这个角度来看呢,Dubbo和Spring Cloud的活跃度差不多,相差不多,但是Spring Cloud相对更活跃一些,这是他的社区活跃度,然后我们再来看百度指数,我们通过百度指数,可以看到这两个技术,被搜索的次数,看看Dubbo和Spring Cloud这两个技术,搜索的技术上有什么区别,我们先来访问一下百度,然后百度指数,进入到百度指数官网http://index.baidu.com/v2/index.html?from=pinzhuan#/我们先去搜一下dubbohttp://index.baidu.com/v2/main/index.html#/trend/dubbo?words=dubbo在这里就可以看到Dubbo进7天关键字搜索的次数,整体日均值是2570次,这是他的日均指数,我们再来看一下SpringCloud的http://index.baidu.com/v2/main/index.html#/trend/dubbo?words=dubbo,spring%20cloudDubbo出现的时间点比SpringCloud要早好多,所以很多项目当中都用到Dubbo了,而SpringCloud是最近才出的平台,所以好多项目当中呢,还没有真正的使用SpringCloud,即便是使用了,也是一些尝试的使用,比如做一些小型的项目,尝试的用一下SpringCloud,所以他的搜索次数没有Dubbo的多,这也是能理解的,其实在文档质量这一块呢,Dubbo的文档比较集中,而且健全,还有一个最大的优势呢,Dubbo的好多文档都是中文的,因为这个技术出自于我们国内的阿里,马云考虑到了我们国内的程序员英语都不咋地,所以提供了很多的中文文档,当然这只是个玩笑,Spring Cloud他提供的文档也比较多,但是但部分内容,到目前来看,还是英文的比较多,我相信随着时间的沉淀,我们有好多的程序员呢,会把英文文档呢,翻译成中文文档,贡献出来,所以这也是一个时间的问题,这是他两文档质量的一个对比,然后我们再来看性能,其实性能也非常重要,因为我们在做技术选型的时候,其中有一项指标就是,要考虑技术的性能怎么样,我们肯定要选择性能要高一些的技术来用,但是性能又不是一个决定的因数,并不是我什么东西只考虑性能,不是这样的,只是我们考虑技术的一个点,并不是全部的,我们再来看一下性能,性能怎么看呢,我在这里给大家准备了一篇文章https://mp.weixin.qq.com/s?__biz=MzA5MzQ2NTY0OA==&mid=2650796496&idx=1
&sn=a544b76660484b9914b65f038cc39e6d
&chksm=88562c8fbf21a5995909ffa9f172f31651b1ebd04897917e43caef3491954e24ed0d0477a5a1
&mpshare=1
&scene=23
&srcid=01245faqrBlQETYK9c7zVmd3#rd孰优孰劣?Dubbo VS Spring Cloud性能测试大对决!在这里有一个Dubbo和SpringCloud性能的一个对比,我们从这里测试出来的数据呢,也能看出性能之间的差异,最近我们试图从Dubbo切换到Spring Cloud,分别进行了性能的一个测试,为了得出数据量不同的情况下二者的性能表现,我们分别准备了25个属性的POJO和一个50个属性的POJO,通过这样的方式我们也可以间接地了解二者在序列化方面的水平差异,以下是测试结果我们来看一下,首先是测试25个属性的POJO,然后次数是10万次,然后我们来看一下,发送10W次请求,传输1个POJO对象,每个请求单位是毫秒,线程数也是做了一个改变的,有10个线程数的,20个线程数的,有50个线程数,有100个线程数的,以及200个线程,那我们来看一下在不同线程数的,我们SpringCloud的耗时还是有很大区别的,比如10个线程下,Dubbo的耗时是2.72毫秒,注意耗时的时间越低,说明性能越好,然后SpringCloud是4毫秒,这是4个线程,20个线程是2.32毫秒,而SpringCloud是2.81,到最后200个线程的时候呢,Dubbo是26.06,SpringCloud是57.12毫秒,那么对25个属性做序列化,10万次基于不同的线程,不管哪个线程来看,其实Dubbo的性能要高于SpringCloud的性能,1:3的情况,Dubbo的性能可以理解为Dubbo的3倍,优于3倍的性能,下面是柱状图我们就不看了,就是表格用柱状图来表示,然后还是25个属性的POJO,然后去做了一个TPS的测试,大家应该知道TPS吧,TPS就是事务传播次数,那么这个值是越大越好,看看他每秒传播的次数有多少,线程数10个线程,20个线程,一直到200个线程,在Dubbo传播10个POJO对象,在10个线程下,是3571个,注意这个次数,这个TPS,每秒事务传播的次数,这个值越大越好,这个传播的次数越多,说明性能越强,所以在10个线程下呢,Dubbo是3571,而SpringCloud是2436次,然后在50个线程下呢,Dubbo是6637次,SpringCloud是3116次,200个线程是6923次,SpringCloud是3003次,所以说通过这个性能对比,通过TPS的性能对比,其实Dubbo的性能也是由于SpringCloud的,Dubbo也是SpringCloud的3倍,然后这个是他的一个柱状图,我们再看下看,上面都是传输一个POJO,接下来还是发送10W次请求,传输10个POJO对象,我们来看10个线程,10个线程,一直到200个线程,Dubbo是2.86,SpringCloud是6.71,单位还是毫秒,然后200个线程Dubbo是2.56,SpringCloud是113.38,所以还是Dubbo的性能是优于SpringCloud,大概也是他的3倍左右,然后再看传输10个POJO的TPS,每秒传播事务的次数,Dubbo10个线程是3446次,SpringCloud才是1445次,以此类推直到200个线程,Dubbo是4265次,SpringCloud是1589次,从这个对比来看,Dubbo的性能也是要优于SpringCloud,然后下面就是柱状图,上面这些都是25个属性的,然后还对50个属性的做了10W次的测试,然后传输一个POJO对象,发送10W次请求,Dubbo还是10个线程用了2.98毫秒,然后Spring Cloud用了4.67毫秒,然后200个线程的时候呢,Dubbo是用了37.97毫秒,SpringCloud是用了61.76毫秒,Dubbo的性能在这一局也是胜出的,然后呢50个属性的POJO,发送10W次请求,他的TPS,Dubbo的是3285次,SpringCloud是2114次,200个请求的时候Dubbo是4844次,SpringCloud是2764次,所以在这一局也是胜出,他的性能也大概是SpringCloud的3倍,最后我们来分析一下,由于SpringCloud与Dubbo天生使用的协议层面不一样,前者使用的HTTP,SpringCloud他使用的是HTTP协议,而后者使用的是TCP协议,其实这个就是一个短连接和长连接了,HTTP的连接肯定是一个长连接,而TCP是一个短连接,那么长连接肯定会更耗时一点,所以从协议这一层来看呢,由于SpringCloud是使用了HTTP协议,多多少少会有点拖后腿,导致两个框架的性能差距略大,基本上是一个三比一的差距,是这样的一个性能上的一个差距,虽然SpringCloud与Dubbo在性能上有天生的劣势,但是考虑到SpringCloud作为一款专门的微服务框架,再加上Restful风格API的趋势,从综合角度,SpringCloud无疑是你所在公司未来微服务话进程中不可缺少的选择之一,说明什么了,我们刚才说过,最开始的时候我说过,我们在技术选型上,性能是我们考虑的一个点,但是性能不是我们唯一的考虑点,虽然说性能高,我们是需要考虑的,我们是要选择性能高的,但是对于技术的一个能力上,也是我们需要考虑的一个点,比如Dubbo的性能比较高,但是他有潜在性的劣势,他对微服务,对于服务治理这一块呢,相比SpringCloud这一块呢,他还是有自己的弱势的,所以我画了功能的一个维度,也能体现出来,比如功能这一块,有服务注册中心,服务调用方式,服务网关,断路由,分布式配置,还有服务追踪,消息总线,数据流,批量任务,这些都是我们在服务治理当中,所需要注意的一个点,那么在这些特点下,其实我们会发现,Dubbo他只是在服务注册中心上,它是提供了这样一个能力,提供了Zookeeper,做他的注册中心,然后还有服务调用方式,RPC,然后服务网关没有,断路由是集群容错,在集群容错下去做断路由的处理,然后下面的功能是始终没有的,SpringCloud要比Dubbo的能力要强大一些,是有功能和组件所支持的,所以说呢,Spring从综合的角度来看呢,SpringCloud的性能要弱于Dubbo,从功能上要强于Dubbo,所以我们在选择微服务架构平台的时候呢,我们更关注谁,那我们除了性能以外,还要考虑其他的能力,二者之间没有说谁强谁弱,技术并没有绝对的,只有相对的,那一般我们根据自己的情况,去做一个技术选择就可以了,我们就从这五个维度去做了Dubbo和SpringCloud的对比,相信大家可以很直观的了解,Dubbo和SpringCloud的一个区别了

SpringCloud与dubbo的区别相关推荐

  1. Dubbo与SpringCloud的架构与区别

    Dubbo与SpringCloud的架构与区别 Dubbo架构图 SpringCloud 架构图 总结 框架 Dubbo SpringCloud 服务注册中心 Zookeeper Spring Clo ...

  2. 通俗易懂讲解RPC、SpringCloud、Dubbo、Zookeeper、Hadoop、hive等概念的区别

    文章目录 1. RPC 2. Hadoop 3. hive 4. SpringCloud和Dubbo 5. Zookeeper 6. 总结 1. RPC RPC是一个远程调用的技术方式,其可以通过HT ...

  3. Spring、SpringMVC、SpringBoot、SpringCloud的联系和区别

    一. 上一篇文章刚刚简单介绍了spring框架,下面我将介绍一下Spring,SpringMVC,SpringBoot,SpringCloud的联系和区别. 首先先简单介绍一下各个框架. Spring ...

  4. spring boot、SpringCloud、Dubbo

    小伙伴们可以从第一篇看起 微服务 分布式 集群 负载均衡详述 spring boot springcloud dubbo概述 springcloud五大核心组件详述 目录 一.SpringCloud概 ...

  5. SpringBoot与SpringCloud的关系与区别

    一.SpringBoot和SpringCloud简介 1.SpringBoot:是一个快速开发框架,通过用MAVEN依赖的继承方式,帮助我们快速整合第三方常用框架,完全采用注解化(使用注解方式启动Sp ...

  6. SpringCloud集成Dubbo实现RPC调用

    SpringCloud轻松集成Dubbo实现RPC调用 很久之前在做微服务架构选型的时候就听说阿里的微服务RPC框架dubbo,当时与Spring Cloud以http协议调用的架构做对比.发现dub ...

  7. SpringCloud 整合 Dubbo

    目录 1.介绍 2.代码实现 2.1 抽取公共模块 2.2 改造服务提供者 2.3 改造服务消费者 3.启动测试 1.介绍 Dubbo有两种使用方式: 1.基于SOA的思想,将一个单体架构拆分为web ...

  8. 不服不行啊,华为P8确实把SpringCloud集成Dubbo给一次性讲透了

    Spring Cloud集成Dubbo 目前Dubbo在国内还是有较多公司在使用的,一方面是因为Dubbo作为阿里巴巴开源的一个SOA服务治理解决方案,在国内发展较早,有比较好的先发优势:另一方面是因 ...

  9. 微服务(SpringCloud、Dubbo、Seata、Sentinel、SpringGateway)

    什么是微服务 微服务的概念是由Martin Fowler(马丁·福勒)在2014年提出的 微服务是由以单一应用程序构成的小服务,自己拥有自己的行程与轻量化处理,服务依业务功能设计,以全自动的方式部署, ...

最新文章

  1. 在.NET中实现彩色光标,动画光标和自定义光标
  2. OpenCV中OrbDescriptorExtractor
  3. telnet服务器显示本机,记一次困扰了我一个月的服务器telnet故障是如何解决的?...
  4. 医疗器械监管系统总结
  5. Linux中的Diff和Patch
  6. 格力:核心科技有时也是高利贷
  7. 获取输入框内容,数值类型转换问题
  8. angular页面打印局部功能实现方法思考
  9. android 7.1 灭屏,oppocolorosv7.1怎么设置息屏时钟
  10. html5提供类似“JQuery”中操作类名的方法
  11. Grads保姆级教学——小乌龟考试看这一篇就够了
  12. 什么是示波器的采样率
  13. Python NLP 入门
  14. 职称计算机ppt2007易错题,职称计算机考试xcel2007模块难题通关技巧.doc
  15. RFID Hacking③:使用ProxMark3嗅探银行闪付卡信息
  16. Hadoop mapreduce课程设计-全球历史平均气温数据分析
  17. JavaSE 知识大纲
  18. Python从零到就业
  19. oracle heavy swapping,WARNING: Heavy swapping observed on system in last 5 mins
  20. 2014年考研高等数学导学(一…

热门文章

  1. can3--socketcan之mcp251x.c
  2. WinForm下ListBox控件“设置DataSource属性后无法修改项集合”的问题解决方案
  3. httpRuntime 一点经验---引
  4. linux—用nc命令监控检测服务器端口
  5. 《跟菜鸟学Cisco UC部署实战》-第 0 章 宣传-课件(一共12章,免费)
  6. [Java 并发编程实战] 设计线程安全的类的三个方式(含代码)
  7. bootstrap大图轮播手机端不能手指滑动解决办法
  8. CSS相邻兄弟选择器
  9. Property #39;sqlSessionFactory#39; or #39;sqlSessionTemplate#39; are required
  10. 虚拟桌面几个常见问题?