SpringCloud和dubbo的区别[通俗易懂]

SpringCloud和dubbo的区别[通俗易懂]SpringCloud跟dubbo的区别从架构层面上来说SpringCloud跟dubbo都是微服务架构在公司开发技术选型中:SpringCloud的维护成本比较高,但是SpringCloud中提供了很多框架、整合了5大组件(全家桶:Ribbon负载均衡、eureka注册中心、Hystrix熔断器、gateway网关、feign服务调用)使用都非常方便,后期便于维护,分布式单一互不影响原则…

大家好,又见面了,我是你们的朋友全栈君。

SpringCloud跟dubbo的区别

从架构层面上来说
SpringCloud跟dubbo都是微服务架构
在公司开发技术选型中:
SpringCloud的维护成本比较高,但是SpringCloud中提供了很多框架、整合了5大组件(全家桶:Ribbon负载均衡、eureka注册中心、Hystrix熔断器、gateway网关、feign服务调用)使用都非常方便,后期便于维护,分布式单一互不影响原则,后期也便于增加需求。
dubbo相比之下开发成本较低,开发效率时效高,但是后期不便于增加需求。

两者的底层原理
SpringCloud跟dubbo都是实现服务之间的远程调用,但是底层又是基于两种不同的方式:
duubbo底层是使用Netty的NIO框架,基于TCP协议传输,使用Hession序列化完成RPC通信。二话不说直接上图:
RPC是介于应用层和传输层之间的协议;
在这里插入图片描述
调用者执行接口时可找到其他进程的函数体,是通过socket交互字
节流实现的;调用者是通过服务注册中心(例如zookeeper)找到被调用者服务的;生成代理对象,序列化跟反序列化达到请求

SpringCloud底层是基于HTTP协议传输,比较简单,不像dubbo,需要自己写底层源码来实现传输,SpringCloud只需遵循http协议便能到达目的。正因为需要需要遵循http协议,从这个通信效率来说当然比不过用二进制传输的dubbo
然而,springcloud是多语言开发的,大家都只需要遵循Http协议便能整合一起,如GO语言,C++,秩序遵循Http协议便可。
但是dubbo只能基于Java开发。
两则有利有弊,大家根据需求来就可以了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132153.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java事务回滚案例_java事务控制

    java事务回滚案例_java事务控制疑问,确实像往常一样在service上添加了注解 @Transactional,为什么查询数据库时还是发现有数据不一致的情况,想想肯定是事务没起作用,出现异常的时候数据没有回滚。于是就对相关代码进行了一番测试,结果发现一下踩进了两个坑,确实是事务未回滚导致的数据不一致。下面总结一下经验教训:Spring事务的管理操作方法编程式的事务管理实际应用中很少使用通过

    2022年8月30日
  • 【Unity3D入门教程】使用C#脚本控制游戏对象

    【Unity3D入门教程】使用C#脚本控制游戏对象使用C#脚本控制游戏对象,是一项必备的基本技能。Unity3D可以使用的脚本有C#和javascript等。我们主要讲注意力集中在C#上。本文将会介绍怎样使用脚本控制场景中的游戏对象。

    2022年8月10日
  • python怎么换行输出的数字对齐_python中如何使输出换行「建议收藏」

    Python的print()函数输出时,通常输出结果是整行显示出来的,这时候我们需要考虑一下,我们输出的结果需不需要换行?不需要换行的方法也是嗯容易的的,这里就不多赘述了,来说说如何做到输出换行:常用的转义符方式:\n#-*-coding:utf-8-*-A=”来看看能不能\n换行。”print(A)输出结果来看看能不能换行。使用三引号进行换行:”””value1;value2;value3…

    2022年4月9日
  • Linux之旅(1): diff, patch和quilt (下)

    Linux之旅(1): diff, patch和quilt (下)

    2021年11月14日
  • oracle错误代码大全(超详细)

    oracle错误代码大全(超详细)本篇文章是对oracle错误代码进行了详细的总结与分析,需要的朋友参考下ORA-00001:违反唯一约束条件(.)ORA-00017:请求会话以设置跟踪事件ORA-00018:超出最大会话数ORA-00019:超出最大会话许可数ORA-00020:超出最大进程数()ORA-00021:会话附属于其它某些进程;无法转换会话ORA-00022:无效的会话ID;访问被拒绝ORA-00023:会话引用进程私用内存;无法分离会话ORA-00024:单一进程模式下不允许从多个

    2022年7月17日
  • MT4安卓版下载安装

    MT4安卓版下载安装投资者安卓手机可以使用MT4软件吗?答案是:当然可以。MT4软件作为投资者通用的交易软件mt4.M1.xinclo.xyz涵盖了多个版本,电脑版MT4、手机版(包含IOS和安卓)MT4、MAC版MT4。如果是安卓手机,下载和安装安卓版的即可。安卓手机是无法在应用商店搜索到MT4的,因此大多都在网页上先获取安装包。下载交易软件,该软件商店中的移动终端。点击安装,软件会存储在手机桌面上,主界面上会显示MT4交易系统软件。…

    2022年8月15日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号