
Dubbo和SpringCloud的区别
Dubbo和SpringCloud的区别
-
Dubbo是来源于阿里团队,SpringCloud是来源于Spring团队
-
Dubbo是SOA时代的产物,它的关注点主要在于服务的调用,流量分发、流量监控和熔断。Spring Cloud诞生于微服务架构时代,考虑的是微服务治理的方方面面。
-
两个框架在开始目标就不一致,Dubbo定位服务治理、Spirng Cloud是一个生态。
-
- Dubbo主要分为服务注册中心,服务提供者,服务消费者,还有管控中心;
- SpringCloud则是一个完整的分布式一站式框架,他有着一样的服务注册中心,服务提供者,服务消费者,管控台,断路器,分布式配置服务,消息总线,以及服务追踪等;
-
- Dubbo底层是使用Netty这样的NIO框架,是基于TCP协议传输的,配合以Hession序列化完成RPC通信。支持短报文,并发能力比springCloud更强大 但图片等大报文效率低 因为数据都是以流的方式传输,短报文发送效率更高
- 而SpringCloud是基于Http协议+rest接口调用远程过程的通信,Http请求会有更大的报文,占的带宽也会更多,REST相比RPC更为灵活。
-
注册中心,dubbo是zookeeper, springcloud是eureka,也可以是zookeeper
-
服务网关,dubbo本身没有实现,只能通过其他第三方技术整合,springcloud有Gateway路由网关,作为路由服务器,进行消费者的请求分发springcloud支持断路器,与git完美集成配置文件支持版本控制,总线实现配置文件的更新与服务自动装配等等一系列的微服务架构要素。
-
一些政府金融项目还用着dubbo;也有很多项目往springCloud项目转型;新开的项目优先就是用springCloud了。
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 千辰