dubbo 面试中问的很多,总结分享下自己遇到的 dubbo 基础面试题。

1、什么是 dubbo?

简单回答 dubbo 是 RPC 远程服务调用框架,也是一个 soa 服务治理框架。

2、dubbo 架构流程图?

生产者:提供服务

消费者: 调用服务

注册中心:注册信息(redis、zookeeper)

监控中心:调用次数、关系依赖等。

理解介绍:

首先生产者将服务注册到注册中心(zookeeper),使用 zk 持久节点进行存储,消费订阅 zookeeper 节点,一旦有节点变更,zookeeper 通过事件通知传递给消费者,消费可以调用生产者服务。

服务与服务之间进行调用,都会在监控中心中,存储一个记录。

 

Dubbo 面试题

3、dubbo 有哪些协议?

默认用的 dubbo 协议、Http 协议、RMI 协议、Hessian 协议

4、什么是 dubbo 服务治理?

服务与服务之间会有很多个 Url、依赖关系、负载均衡、容错、自动注册服务。

5、dubbox 与 dubbo 区别?

Dubox 是当当网基于 dubbo上做了一些扩展,如加了服务可 restful 调用,更新了开源组件等。

Dubox 使用 http 协议+rest 风格传入 json 或者 xml 格式进行远程调用。

Dubbo 使用 Dubbo 协议。

6、 你还了解别的分布式框架吗(RPC 远程调用框架)?

SpringCloud、dubbo、dubbox、thint、Hessian …...

Rpc 其实就是远程调用,服务与服务之间相互进行通讯,目前主流用 http+json 。

7、了解 SpringCloud 吗?讲下SpringCloud 与 dubbo 区别?

相同:

dubbo 与 springcloud 都可以实现RPC远程调用。

dubbo 与 springcloud 都可以使用分布式、微服务场景下。

区别:

dubbo 有比较强的背景,在国内有一定影响力。

dubbo 使用 zookeeper 或 redis 作为作为注册中心。

springcloud 使用 eureka 作为注册中心。

dubbo 支持多种协议,默认使用 dubbo 协议。

Springcloud 只能支持 http 协议。

Springcloud 是一套完整的微服务解决方案。

dubbo 目前已经停止更新,SpringCloud 更新速度快。

 

水平有限,若有问题请留言交流!

互相学习,共同进步 :) 转载请注明出处谢谢!

转载于:https://my.oschina.net/hp2017/blog/1932446

相关文章: