从项目看待Springcloud和Dubbo区别

Dubbo,是阿里巴巴服务化治理的核心框架。Springcloud,是一系列关于服务治理框架的集合。两者在服务治理方面各有优缺点,所以两种框架都有不少公司在用,我特地学习了两种框架,并通过项目对比来了解两个框架之间的区别。

一、Springcloud和Dubbo两个项目的地址

Springcloud项目名称:school-springcloud-springboot,地址如下:

Dubbo项目名称:school-dubbo-springboot,地址如下:

二、项目对比Springcloud和Dubbo(个人理解)

1.粒度大小

粒度大小这个尺寸没有一定的分界线,但是从做这两个项目可以知道,Springcloud可以将项目拆分成更小的粒度,它可以不需要依赖其他项目而独立部署,也就是微服务,通过http协议传输,来解决数据间的交互,所以数据传输问题并不存在,因此,拆分粒度想有多小,就有多小。而Dubbo却不能随意拆分,Dubbo是通过二进制传输的,并且各个项目之间的依赖性非常大,所以项目不能拆分太小,否者会出现项目依赖问题,使得项目出错。

2.速度问题

由于Dubbo是通过二进制传输的,并且项目之间有依赖性,传递速度会比Springcloud来的快,网络慢的时候有点明显。而且从两个项目都启动后,第一次调用数据也可以看到,Dubbo明显快,Springcloud会出现卡顿问题。

3.依赖性

Dubbo的依赖性很大,从maven配置文件可以看到,Dubbo存在着项目之间的调用,更明显的是,Dubbo服务是面向类级的,所以服务接口一定要相同,一但不同就会报错。Springcloud则不同,它是独立部署的,各个项目可以不存在依赖关系,而且服务是面向方法级的,支持Restful传输,Api不需要相同(名字和类名可以不相同),只要方法(返回的方法)相同就好,而且基于Spring,弹性更好,跟灵活。

4.工程花费时间

Springcloud如果粒度规划小一点的话,时间会花的比Dubbo多,而且Springcloud是一系列框架配合起来用的,难度更大,而Dubbo就方便多了,它主要是把时间花在依赖解决上,服务之间的条用比起Springcloud来说简单多了。

5.选择

要是我的话,我可能会选择Springcloud作为首要框架,它虽然做起来时间耗费好多,而且其中会遇到很大困难(技术点太多),都是它更好理解,有着很强的扩展性,未来要是有其他需求,可以花费更少时间(在某个小工程上改就行)。对于大项目而言,就会显得越发明显。

三、总结

在做这两个项目之前,我可能了解到一些关于Dubbo和Springcloud内容,但都只是了解,直到自己认认真真做了这两个项目之后,自己对于微服务的认知才得到了提高,知道了未来的发展方向,当然,我会继续加油的!Give Me Five!


更多博客,欢迎来小秋霖~~~

smirk小泽
2018 年 07月02日

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值