Dubbo

一、Dubbo是什么?
Dubbo是阿里巴巴开源的基于 Java 的高性能 RPC(一种远程调用) 分布式服务框架(SOA),致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。
二、为什么要用Dubbo?
因为是阿里开源项目,国内很多互联网公司都在用,已经经过很多线上考验。内部使用了 Netty、Zookeeper,保证了高性能高可用性。

 

 

三、Dubbo 和 Spring Cloud 有什么区别?

 
不需要,如果硬要用Web 容器,只会增加复杂性,也浪费资源。
五、Dubbo内置了哪几种服务容器?


 

Dubbo 的服务容器只是一个简单的 Main 方法,并加载一个简单的 Spring 容器,用于暴露服务。
六、dubbo都支持什么协议,推荐用哪种?


 

七、Dubbo里面有哪几种节点角色?


 

八、dubbo服务注册与发现的流程图

dubbo服务注册与发现的流程图

九、Dubbo默认使用什么注册中心,还有别的选择吗?
推荐使用zookeeper作为注册中心,还有redis、multicast、simple注册中心。
十、Dubbo 核心的配置有哪些?

Dubbo 核心的配置

十一、在 Provider 上可以配置的 Consumer 端的属性有哪些?


 

十二、Dubbo有哪几种负载均衡策略,默认是哪种?


 

十三、Dubbo启动时如果依赖的服务不可用会怎样?
Dubbo缺省会在启动时检查依赖的服务是否可用,不可用时会抛出异常,阻止 Spring 初始化完成,默认
check="true",可以通过 check="false" 关闭检查。
十四、Dubbo推荐使用什么序列化框架,你知道的还有哪些?


 

十五、Dubbo默认使用的是什么通信框架,还有别的选择吗?


 

十六、Dubbo有哪几种集群容错方案,默认是哪种?

Dubbo集群容错方案

十七、服务提供者能实现失效踢出是什么原理?


 

十八、Dubbo服务之间的调用是阻塞的吗?


 

Dubbo暂时不支持分布式事务。
十九、Dubbo的管理控制台能做什么?


 

二十、Dubbo 服务暴露的过程


 

二十一、当一个服务接口有多种实现时怎么做?
当一个接口有多种实现时,可以用 group 属性来分组,服务提供方和消费方都指定同一个 group 即可。
二十一、服务上线怎么兼容旧版本?
可以用版本号(version)过渡,多个不同版本的服务注册到注册中心,版本号不同的服务相互间不引用。这
个和服务分组的概念有一点类似。
二十二、Dubbo 和 Dubbox 有什么区别?
Dubbox 是继 Dubbo 停止维护后,当当网基于 Dubbo 做的一个扩展项目,如加了服务可 Restful 调用,更新了开源组件等。
二十三、你觉得用 Dubbo 好还是 Spring Cloud 好?
扩展性的问题,没有好坏,只有适合不适合,我更倾向于使用 Dubbo, Spring Cloud 版本升级太快,组件更新替换太频繁,配置太繁琐。
二十四、出现调用超时com.alibaba.dubbo.remoting.TimeoutException异常怎么办?


 

二十五、出现java.util.concurrent.RejectedExecutionException或者Thread pool exhausted怎么办?


 

作者:五十米_深蓝
链接:https://www.jianshu.com/p/3090d63e9cb3
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。