面试专题:一文让你透彻理解Dubbo底层原理

本文详细探讨了Dubbo与Spring Cloud的区别,重点介绍了Dubbo 2.7的新特性,如动态配置中心和元数据中心。讨论了Dubbo支持的通信协议及其应用场景,以及Http的长连接和短连接原理。此外,文章还涵盖了Dubbo的集群容错方案,如Failover、Failfast等,并详细阐述了负载均衡策略,如Random、RoundRobin等。同时,解析了服务降级、服务提供者的失效踢出机制以及服务暴露和服务引入的流程。最后,简要概述了Dubbo服务调用涉及的Mock、路由、负载均衡、Filter和请求响应过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Dubbo和Spring Cloud有什么区别?

说真的,这两个东西没有可比性,Dubbo最开始是一个可扩展的RPC调用框架,在Dubbo里一次调用涉及到的服务路由、负载均衡、序列化机制、网络传输协议等等都是可以扩展的,具体的性能取决于所选用的组件,同样Spring Cloud也类似,所以我们不能站在性能的角度来对比两个框架。

其次,作为框架,要对比我们也应该对比这个框架的可扩展性,Dubbo的可扩展性是不要比Spring Cloud好的。而Spring Cloud目前的优势是组件比较齐全,比如有服务网关、分布式配置中心、服务跟踪等等,而这些Dubbo 暂时还没有,但是在Dubbo生态里是准备加上的。

 

Dubbo 2.7有些什么新功能?

1. 动态配置中心(configcenter)

2. 元数据中心

3. 条件路由支持应用

4. 标签路由

 

Dubbo支持哪些通信协议,不同的协议分别适用哪些场景

1. dubbo://,框架的默认协议,采用单一长连接和 NIO 异步通讯,适合于小数据量大并发的服务调用。

2. http://,使用短连接同步传输,使用数据量不确定,并且需要在js或浏览器中使用。

 

Http长连接和短连接

Http1.0, 不 致 吃 长 连 接

Http1.1,默认为长连接,Connection=keep-alive

但是,说Http长连接并不准确,因为http是应用层协议,tcp才是传输层协议,只有传输层才能说建立连接与关闭 连接。

那么&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值