一、Dubbo是什么?

Dubbo是阿里巴巴开源的基于 Java 的高性能 RPC(一种远程调用) 分布式服务框架(SOA),致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。

二、为什么要用Dubbo?

因为是阿里开源项目,国内很多互联网公司都在用,已经经过很多线上考验。内部使用了 Netty、Zookeeper,保证了高性能高可用性。

1、使用Dubbo可以将核心业务抽取出来,作为独立的服务,逐渐形成稳定的服务中心,可用于提高业务复用
灵活扩展,使前端应用能更快速的响应多变的市场需求。
2、分布式架构可以承受更大规模的并发流量。

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

1、通信方式不同:Dubbo 使用的是 RPC 通信,而Spring Cloud 使用的是HTTP RESTFul 方式。
2、组成不一样:
dubbo的服务注册中心为Zookeerper,服务监控中心为dubbo-monitor,无消息总线,服务跟踪、批量任务等组件;
spring-cloud的服务注册中心为spring-cloud netflix enruka,服务监控中心为spring-boot admin,有消息总线,数据流、服务跟踪、批量任务等组件;

四、Dubbo需要 Web 容器吗?

不需要,如果硬要用Web 容器,只会增加复杂性,也浪费资源。

五、Dubbo内置了哪几种服务容器?

三种服务容器:
1、Spring Container
2、Jetty Container
3、Log4j Container

Dubbo 的服务容器只是一个简单的 Main 方法,并加载一个简单的 Spring 容器,用于暴露服务。

六、dubbo都支持什么协议,推荐用哪种?

1、dubbo://(推荐)
2、http://
3、rest://
4、redis://
5、memcached://

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

1、provide:暴露服务的服务提供方
2、consumer:调用远程服务的服务消费方
3、registry:服务注册于发现的注册中心
4、monitor:统计服务调用次数和调用时间的监控中心
5、container:服务运行容器

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

三分钟搞定分布式结构服务部署发布,Java高级面试题及答案

九、Dubbo默认使用什么注册中心,还有别的选择吗?

推荐使用zookeeper作为注册中心,还有redis、multicast、simple注册中心。

十、Dubbo 核心的配置有哪些?

三分钟搞定分布式结构服务部署发布,Java高级面试题及答案

独家面经总结,超级精彩

本人面试腾讯,阿里,百度等企业总结下来的面试经历,都是真实的,分享给大家!

image

image

image

image

Java面试准备

准确的说这里又分为两部分:

  1. Java刷题
  2. 算法刷题

Java刷题:此份文档详细记录了千道面试题与详解;

image

image

CodeChina开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频】