概念:
Dubbo RPC:基于TCP或HTTP的远程过程调用(就像在本地调用一样),RPC强调的是远程调用。
spring cloud:基于springboot,而springboot是基于HTTP协议REST风格的RPC。
对比:
1、协议:服务间通信协议不同,Dubbo是基于TCP协议的rpc,spring cloud基于http协议。
2、RPC避免了上面提到的原生RPC带来的问题。而且REST相比RPC更为灵活,SpringCloud不存在代码级别的强依赖
3、效率:由于协议的不同,调用的效率相比之下Dubbo比SpringCLoud效率高。
4、技术开放性:SpringCLoud基于http协议,由于http的协议更方便于多语言情况下的整合,提供服务方可以用任意语言开发服务。
5、spring cloud是微服务生态,包括完整的微服务相关的组件工具集,而RPC是远程调用的技术,仅仅是微服务的一部分,而dubbo框架正是RPC的实现框架。
6、Spring Cloud还提供了包括Netflix Eureka、hystrix、feign、Spring Boot Admin 、Sleuth、config、stream、security、sleuth等分布式服务解决方案,
而Dubbo为了拥抱融入Spring Cloud生态,Dubbo也在积极规划和演进适配SpringCloud生态的新版本。