Dubbo面试八股文—1
Posted 四猿外
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dubbo面试八股文—1相关的知识,希望对你有一定的参考价值。
Dubbo 配置文件是如何加载到Spring 中的?
Spring 容器在启动的时候,会读取到Spring 默认的一些schema 以及Dubbo 自定义的schema,每个schema 都会对应一个自己的NamespaceHandler,NamespaceHandler 里面通过BeanDefinitionParser 来解析配置信息并转化为需要加载的bean 对象!
Dubbo SPI 和Java SPI 区别?
JDK SPI
JDK 标准的SPI 会一次性加载所有的扩展实现,如果有的扩展吃实话很耗时,但也没用上,很浪费资源。所以只希望加载某个的实现,就不现实了
DUBBO SPI
1,对Dubbo 进行扩展,不需要改动Dubbo 的源码
2,延迟加载,可以一次只加载自己想要加载的扩展实现。
3,增加了对扩展点IOC 和AOP 的支持, 一个扩展点可以直接setter 注入其它扩展点。
3, Dubbo 的扩展机制能很好的支持第三方IoC 容器,默认支持Spring Bean。
Dubbo 支持分布式事务吗?
目前暂时不支持,可与通过tcc-transaction 框架实现
介绍:tcc-transaction 是开源的TCC 补偿性分布式事务框架
Git 地址:https://github.com/changmingxie/tcc-transaction
TCC-Transaction 通过Dubbo 隐式传参的功能, 避免自己对业务代码的入侵。
Dubbo 可以对结果进行缓存吗?
为了提高数据访问的速度。Dubbo 提供了声明式缓存,以减少用户加缓存的工作量
<dubbo:reference cache="true" />
其实比普通的配置文件就多了一个标签cache=“true”
服务上线怎么兼容旧版本?
可以用版本号(version)过渡, 多个不同版本的服务注册到注册中心,版本号不同的服务相互间不引用。这个和服务分组的概念有一点类似。
以上是关于Dubbo面试八股文—1的主要内容,如果未能解决你的问题,请参考以下文章
Java八股文面试题 基础篇 -- 二分查找算法冒泡排序选择排序插入排序希尔排序快速排序