Dubbo用起来就和EJB、WebService差很少,调用一个远程的服务(或者JavaBean)的时候在本地有一个接口,就像调用本地的方法同样去调用,它底层帮你实现好你的方法参数传输和远程服务运行结果传回以后的返回,就是RPC的一种封装
固然,这个只是Dubbo的最基本的功能,它的特色是:前端
相信很多去面试阿里的朋友都有被面试官问到了Dubbo的相关问题,小编在这里将阿里面试官问的最频繁的那些Dubbo面试题整理了出来,以供你们参考面试
Dubbo是阿里巴巴开源的基于 Java 的高性能 RPC(一种远程调用) 分布式服务框架(SOA),致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。redis
由于是阿里开源项目,国内不少互联网公司都在用,已经通过不少线上考验。内部使用了 Netty、Zookeeper,保证了高性能高可用性。算法
一、使用Dubbo能够将核心业务抽取出来,做为独立的服务,逐渐造成稳定的服务中心,可用于提升业务复用
灵活扩展,使前端应用能更快速的响应多变的市场需求。
二、分布式架构能够承受更大规模的并发流量。spring
一、通讯方式不一样:Dubbo 使用的是 RPC 通讯,而Spring Cloud 使用的是HTTP RESTFul 方式。
二、组成不同:
dubbo的服务注册中心为Zookeerper,服务监控中心为dubbo-monitor,无消息总线,服务跟踪、批量任务等组件;
spring-cloud的服务注册中心为spring-cloud netflix enruka,服务监控中心为spring-boot admin,有消息总线,数据流、服务跟踪、批量任务等组件;网络
不须要,若是硬要用Web 容器,只会增长复杂性,也浪费资源。架构
三种服务容器:
一、Spring Container
二、Jetty Container
三、Log4j Container并发
Dubbo 的服务容器只是一个简单的 Main 方法,并加载一个简单的 Spring 容器,用于暴露服务。负载均衡
一、dubbo://(推荐)
二、http://
三、rest://
四、redis://
五、memcached://框架
一、provide:暴露服务的服务提供方
二、consumer:调用远程服务的服务消费方
三、registry:服务注册于发现的注册中心
四、monitor:统计服务调用次数和调用时间的监控中心
五、container:服务运行容器
推荐使用zookeeper做为注册中心,还有redis、multicast、simple注册中心。
因为篇幅缘由,在这就不作所有展现了,这些题我已经整理成pdf文档免费分享给那些有须要的朋友,同时整理也花费了蛮多时间,有须要的朋友能够点击蓝色传送门便可获取免费领取方式,还能够得到我精心整理的一份阿里面试合集。