dubbo面试题

【2021最新版】Dubbo面试题总结(40道题含答案解析) 文章目录1、为什么要用Dubbo?2、Dubbo的整体架构设计有哪些分层?3、默认使用的是什么通信框架,还有别的选择吗?4、服务调用是阻塞的吗?5、一般使用什么注册中心?还有别的选择吗?6、默认使用什么序列化框架,你知道的还有哪些?7、服务提供者能实现失效踢出是什么原理?8、服务上线怎么不影响旧版本?9、如何解决服务调用链过长的问题?10、说说核心的配置有哪些?11、Dubbo推荐用什么协议?12、同一个服务多个注册的情况下可以直连某一个服务吗?13、画一画服务注册与发现的流程图?14、Dubbo集群容错有 阅读详情

Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合)。

从服务模型的角度来看,Dubbo采用的是一种非常简单的模型,要么是提供方提供服务,要么是消费方消费服务,

所以基于这一点可以抽象出服务提供方(Provider)和服务消费方(Consumer)两个角色。关于注册中心、协议支持、服务监控等内容,详见后面描述。

Dubbo面试题精集

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

默认也推荐使用netty框架,还有mina。

服务调用是阻塞的吗?

默认是阻塞的,可以异步调用,没有返回值的可以这么做。

默认使用什么序列化框架,你知道的还有哪些?

默认使用Hessian序列化,还有Duddo、FastJson、Java自带序列化。

在java的序列化里面也是介绍rpc框架时候,在远程调用中,需要把参数和返回值通过网络传输,这个使用就要用到序列化将对象转变成字节流,从一端到另一端之后再反序列化回来变成对象。作用了说了,今天在看文章的时候发现别人贴出效率对比,hessian比java的序列化高出很多。特意补充下相关知识点。

百科:Hessian是一个轻量级的remoting onhttp工具,使用简单的方法提供了RMI的功能。 相比WebService,Hessian更简单、快捷。采用的是二进制RPC协议,因为采用的是二进制协议,所以它很适合于发送二进制数据。

hessian序列化

对象序列化的过程为:

         先将对象转为字节码或其它,然后再将其还原为对象

hessian序列化比Java序列化高效很多,而且生成的字节流也要短很多。

 

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

服务失效踢出基于zookeeper的临时节点原理。

服务上线怎么不影响旧版本?

采用多版本开发,不影响旧版本。

如何解决服务调用链过长的问题?

可以结合zipkin实现分布式服务追踪。

说说核心的配置有哪些?

核心配置有

dubbo:service/

dubbo:reference/

dubbo:protocol/

dubbo:registry/

dubbo:application/

dubbo:provider/

dubbo:consumer/

dubbo:method/

dubbo推荐用什么协议?

默认使用dubbo协议。

同一个服务多个注册的情况下可以直连某一个服务吗?

可以直连,修改配置即可,也可以通过telnet直接某个服务。

画一画服务注册与发现的流程图

流程图见dubbo.io。

Dubbo集群容错怎么做?

读操作建议使用Failover失败自动切换,默认重试两次其他服务器。写操作建议使用Failfast快速失败,发一次调用失败就立即报错。

在使用过程中都遇到了些什么问题?

使用过程中的问题可以百度

dubbo和dubbox之间的区别?

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

你还了解别的分布式框架吗?

别的还有spring的spring cloud,facebook的thrift,twitter的finagle等。 

1.Dubbo支持哪些协议,每种协议的应用场景,优缺点?

  • dubbo: 单一长连接和NIO异步通讯,适合大并发小数据量的服务调用,以及消费者远大于提供者。传输协议TCP,异步,Hessian序列化;
  • rmi: 采用JDK标准的rmi协议实现,传输参数和返回参数对象需要实现Serializable接口,使用java标准序列化机制,使用阻塞式短连接,传输数据包大小混合,消费者和提供者个数差不多,可传文件,传输协议TCP。 多个短连接,TCP协议传输,同步传输,适用常规的远程服务调用和rmi互操作。在依赖低版本的Common-Collections包,java序列化存在安全漏洞;
  • webservice: 基于WebService的远程调用协议,集成CXF实现,提供和原生WebService的互操作。多个短连接,基于HTTP传输,同步传输,适用系统集成和跨语言调用;
  • http: 基于Http表单提交的远程调用协议,使用Spring的HttpInvoke实现。多个短连接,传输协议HTTP,传入参数大小混合,提供者个数多于消费者,需要给应用程序和浏览器JS调用;
  • hessian: 集成Hessian服务,基于HTTP通讯,采用Servlet暴露服务,Dubbo内嵌Jetty作为服务器时默认实现,提供与Hession服务互操作。多个短连接,同步HTTP传输,Hessian序列化,传入参数较大,提供者大于消费者,提供者压力较大,可传文件;
  • memcache: 基于memcached实现的RPC协议
  • redis: 基于redis实现的RPC协议

2.Dubbo超时时间怎样设置?

 Dubbo超时时间设置有两种方式:

  • 服务提供者端设置超时时间,在Dubbo的用户文档中,推荐如果能在服务端多配置就尽量多配置,因为服务提供者比消费者更清楚自己提供的服务特性。
  • 服务消费者端设置超时时间,如果在消费者端设置了超时时间,以消费者端为主,即优先级更高。因为服务调用方设置超时时间控制性更灵活。如果消费方超时,服务端线程不会定制,会产生警告。

3.Dubbo有些哪些注册中心?

  • Multicast注册中心: Multicast注册中心不需要任何中心节点,只要广播地址,就能进行服务注册和发现。基于网络中组播传输实现;
  • Zookeeper注册中心: 基于分布式协调系统Zookeeper实现,采用Zookeeper的watch机制实现数据变更;
  • redis注册中心: 基于redis实现,采用key/Map存储,住key存储服务名和类型,Map中key存储服务URL,value服务过期时间。基于redis的发布/订阅模式通知数据变更;
  • Simple注册中心

4.Dubbo集群的负载均衡有哪些策略  

 Dubbo提供了常见的集群策略实现,并预扩展点予以自行实现。

  • 负载均衡策略有( 随机、轮循、最少活跃调用数、一致性Hash)

    Random LoadBalance

    随机,按权重设置随机概率。

    在一个截面上碰撞的概率高,但调用量越大分布越均匀,而且按概率使用权重后也比较均匀,有利于动态调整提供者权重。

    RoundRobin LoadBalance

    轮循,默认,按公约后的权重设置轮循比率。

    存在慢的提供者累积请求的问题,比如:第二台机器很慢,但没挂,当请求调到第二台时就卡在那,久而久之,所有请求都卡在调到第二台上。

    LeastActive LoadBalance

    最少活跃调用数,相同活跃数的随机,活跃数指调用前后计数差。

    使慢的提供者收到更少请求,因为越慢的提供者的调用前后计数差会越大。

    ConsistentHash LoadBalance

    一致性 Hash,相同参数的请求总是发到同一提供者。

    当某一台提供者挂时,原本发往该提供者的请求,基于虚拟节点,平摊到其它提供者,不会引起剧烈变动。

5.Dubbo监控中心搭建

 自行搭建

史上最全 40 道 Dubbo 面试题及答案 Dubbo是国内最出名的分布式服务框架,也是 Java 程序员必备的必会的框架之一。Dubbo更是中高级面试过程中经常会问的技术,无论你是否用过,你都必须熟悉。下面我为大家准备了一些 Dubbo 常见的的面试题,一些是我经常问别人的,一些是我过去面试遇到的一些问题,总结给大家,希望对大家能有所帮助。1、Dubbo是什么?Dubbo是阿里巴巴开源的基于 Java 的高性能 RPC分布式服务框架,现已成为 Apache 基金会孵化项目。面试官问你如果这个都不清楚,那下面的就没必要问了。 阅读详情

相关推荐

Dubbo面试题

java基础-1 java基础-2 Dubbo面试题 springboot面试题 SQL常见的面试题 Linux常见的面试题 1、Dubbo是什么? Dubbo是阿里巴巴开源的基于 Java 的高性能 RPC 分布式服务框架,现已成为 Apache 基金会孵化项目。 dubbo是一个分布式框架,远程服务调用的分布式框架,其核心部分包含:...

ANGEL CITY 2万+

Dubbo框架

Dubbo是一款高性能、轻量级的RPC服务开发框架,是由阿里巴巴公司开源并贡献给Apache基金会的。他可以通过RPC快速调用远程服务,并且提供了很多功能,例如负载均衡、服务注册和发现、容错机制等,使得分布式服务的开发变得更加简单和方便。RPC:Remote Procedure Call Protocol,远程过程调用协议。

wwzzzzzzzzzzzzz的博客 2392

华为S5700三层交换机VLAN配置避坑指南:为什么你的VLAN间无法互通?

本文针对华为S5700三层交换机VLAN间无法互通的典型故障,提供深度排障指南。文章从数据转发原理入手,系统梳理了从物理链路、VLAN配置、VLANIF接口状态、路由表到ARP表、MTU及安全策略等全链路检查点,并给出了清晰的排查命令与流程,帮助网络工程师快速定位并解决VLAN间路由问题,实现稳定互通。

tt34567的博客 871

Dubbo 分布式服务框架

目录 节点角色说明: 调用关系说明: 1. 给我介绍一下 dubbo 吧? 2. 你们在项目中如何使用 dubbo 的? 3. 你们通过什么方式把服务发布到注册中心的? 4. Dubbo 容错策略有哪些? 5. Dubbo 超时时间设置怎么设置,服务调用超时问题如何解决 6. dubbo 在调用服务不成功时,默认是会重试几次。 7. 负载均衡实现原理是什么? 8. 你们公司的 double 注册中心用的什么? 9. 解释下 dubbo,云服务,和 zookeeper? 10. 为

xinyi_java的博客 1192

SecureCRT串口连接保姆级教程:从驱动安装到波特率设置(附常见问题解决)

本文提供SecureCRT串口连接的保姆级教程,涵盖从USB转串口驱动安装、端口识别到波特率等核心参数设置的完整流程。针对连接失败、乱码、键盘输入无响应等高频问题,给出了深度排查与解决方案,帮助网络与嵌入式开发新手快速掌握串口调试技能。

weixin_29281941的博客 432

人大金仓数据库Kingbase FlySync同步程序安装

Kingbase FlySync同步程序(以下简称 KFS)是面向异地容灾、数据集中共享的场景推出的具备在异构数据平台间实现实时、增量数据同步的工具类产品,主要采用了物理日志解析技术,帮助用户解决不同数据平台的数据间可实现任意方向实时移动流转的问题,并保证此过程中数据不丢失,状态可监控,流转数据量可统计。KFS 需要安装的主要组件有 2 个,分别是后端同步程序和管理控制平台,另外KFS的部署方式也有2种,为分离部署何集中部署•集中部署:KFS与数据库部署在同一机器上。

weixin_44312518的博客 1177

Dubbo(一) 快速介绍及入门

一、 Dubbo 简介 1 Dubbo 是什么 Dubbo 官网地址: http://dubbo.apache.org/zh-cn/ Dubbo 最早是 Alibaba 开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合)。从服务模型的角度来看,Dubbo 采用的是一种非常简单的模型,要么是提供方提供服务,要么是消费方消费服务,所以基于这一点可以抽象出服务提供方(Provider)和服务消费方(Consumer)两个角色。 2 发展

奥迪的博客 863

实战详细讲解Qt插件plugin的编写与用法

qt插件的开发,可以说是动态库的开发,因为调用方式类似,多熟悉一下,利用Qt框架开发很简单的。在想想这种调用过程有的熟悉,比如公司买了一堆摄像头,公司要对摄像头进行二次开发,实现自己想要的功能,集成到一套设备里去,然后在卖给用户。此时厂商肯定会提供开发文档,并给你SDK包(软件开发工具包), 包里你会发现只有头文件和一堆库文件,没有源文件,因为实现的过程是产商公司保密的,给你看还得了。所以都封装成了库的形式给你调用,如静态库或者动态库。

qq_44667165的博客 1万+

Vue.js Hello World原理深度解析:从CDN入门到DevTools调试

Hello World是前端开发中最基础的声明式渲染范例,其背后涉及响应式系统、虚拟DOM、模板编译与开发工具链等核心机制。Vue.js通过Proxy实现数据劫持与视图自动更新,配合DevTools提供运行时状态快照,使开发者能直观观测data、组件树与生命周期。CDN引入方式虽简,却强制暴露JS加载顺序、模块化执行时机及挂载上下文等底层细节,是理解Vue 3设计哲学(如createApp、setup、reactive)的最佳起点。本文聚焦‘vue.js放在哪里’‘vue.js devtools插件下载 e

weixin_30555125的博客 1008

《LabVIEW ZYNQ实战指南》第6章>>案例解析:基于USB WiFi模块的ZYNQ无线通信部署与Linux RT开发

本文详细解析了如何为ZYNQ开发板部署USB WiFi模块,实现无线通信。通过LabVIEW Linux RT环境,利用封装好的驱动VI,开发者可轻松配置ZYNQ连接无线网络,摆脱网线束缚,实现程序无线部署与远程调试,为工业物联网应用奠定基础。

app77的博客 754

拒绝无意义刷屏,打造高效率热点追踪,极空间部署『TrendRadar』

今天的这个项目确实不错,通过部署在极空间NAS之后,我们就能一直不间断的获取到自己想要看到的新闻或者信息。项目的设置项其实有很多,有兴趣的小伙伴可以在部署之后自己慢慢挖掘~目前年终大促正在火热进行中,极空间NAS不管是新品还是之前在售的畅销型号都有专属的优惠,并且还能叠加国补、平台优惠等福利,享受180天换新以及2年质保服务 ,更有抽奖、晒单等活动,喜欢的小伙伴赶快冲吧!

qq_63499861的博客 2290

Dubbo框架的介绍

高性能:Dubbo采用了基于NIO的异步通信模型,支持多种序列化方式,能够在网络通信中实现高性能的数据传输。分布式:Dubbo支持服务的注册与发现、负载均衡、容错机制等分布式特性,能够有效地支持大规模分布式系统的构建。服务化:Dubbo提供了服务化治理的能力,可以将服务提供者和消费者解耦,实现服务的动态扩容、降级、隔离等功能。配置化:Dubbo支持多种配置方式,可以通过XML配置文件或注解方式来定义服务接口,灵活易用。简单易用:Dubbo提供了简单易用的API,可以快速上手并进行开发。

Flying_Fish_roe的博客 1095

uniapp - 微信授权登录报错 errMsg“:“login:fail send“ | “code“:-100 | “innerCode“:-6,解决uni-app调用微信登录时没有响应且返回错误

uni-app,微信登录,微信登录报错,微信小程序,支付宝小程序,安卓app,苹果ios,nvue,H5网页网站,uniapp苹果安卓app,微信授权登录,uniAppAPP端微信登录报错,微信确认登录界面后点击登录报错,"errMsg":"login:failsend","errCode":-100,"code":-100,"innerCode":-6,都配置好了还是报错怎么办,uniapp微信授权登录报错,UniApph5对接微信登录出现错误,appid,应用签名,微信登陆,code:-100

🏆 前端领域优质创作者 1万+

Dubbo面试题及答案整理,Dubbo面试题大全带答案(2021最新版)

本套Dubbo面试题分了6套,都有Dubbo面试题汇总带答案 Dubbo面试题及答案【最新版】Dubbo高级面试题大全(2021版),发现网上很多Dubbo面试题及答案整理都没有答案,所以花了很长时间搜集,本套Dubbo面试题大全,Dubbo面试题大汇总,有大量经典的Dubbo面试题以及答案,包含Dubbo语言常见面试题、Dubbo工程师高级面试题及一些大厂Dubbo开发面试宝典,面试经验技巧等,应届生,实习生,企业工作过的,都可参考学习! 这套Dubbo面试题汇总大全,希望对大家有帮助哈~ 博主已将

架构师专栏 2803

Linux故障排查和性能优化面试题及参考答案

在 Linux 系统中,负载(Load Average)是衡量系统繁忙程度的一个重要指标,它表示系统在特定时间间隔内运行队列中的平均进程数。负载值反映了系统当前的工作压力,主要包括 CPU 等待运行的进程数量和处于不可中断睡眠状态(通常是等待 I/O 操作完成)的进程数量。负载平均值通常有三个数值,分别代表过去 1 分钟、5 分钟和 15 分钟内的系统平均负载。例如,在使用uptime命令或查看文件时,会看到类似这样的输出,这三个数值依次表示过去 1 分钟、5 分钟和 15 分钟的负载平均值。

大模型大数据攻城狮的专栏 1081

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Dubbo相关面试题

原文转载至:https://blog.youkuaiyun.com/moakun/article/details/82919804 想往高处走,怎么能不懂 Dubbo? Dubbo是国内最出名的分布式服务框架,也是 Java 程序员必备的必会的框架之一。Dubbo 更是中高级面试过程中经常会问的技术,无论你是否用过,你都必须熟悉。 下面我为大家准备了一些 Dubbo 常见的的面试题,一些是我经常问别人的,一些是我过去面试遇到的一些问题,总结给大家,希望对大家能有所帮助。 1、Dubbo是什么? Dubbo是阿

漫天雪_昆仑巅 5708

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

Dubbo面试题总结

Dubbo面试题

itsniu的博客 1084

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

【Java面试系列】Dubbo面试题

目录 1.Dubbo 面试题 2.Dubbo 面试题答案解析 1、为什么要用 Dubbo? 2、Dubbo 的整体架构设计有哪些分层? 3、默认使用的是什么通信框架,还有别的选择吗? 4、服务调用是阻塞的吗? 5、一般使用什么注册中心?还有别的选择吗? 6、默认使用什么序列化框架,你知道的还有哪些? 7、服务提供者能实现失效踢出是什么原理? 8、服务上线怎么不影响旧版本? 9、如何解决服务调用链过长的问题? 10、说说核心的配置有哪些? 11、Dubbo 推荐用什么协议? .

没有伞的孩子必须努力奔跑!—小林 1157

Dubbo 面试题汇总

Dubbo 是一款高性能、轻量级的开源 Java RPC 框架。它主要作用是实现服务的发布与调用,提供了高效的远程服务调用、负载均衡、容错机制等功能,使得分布式系统的开发更加便捷和高效。Dubbo 的服务降级是指在服务提供者出现故障或响应时间过长时,服务消费者采取的一种应对策略,返回一个预先设定的默认值或执行一个备用的逻辑。触发服务降级的情况包括:服务提供者不可用:服务提供者宕机或网络故障。服务响应时间过长:超过了设定的超时时间。服务调用次数过多:超过了设定的限流阈值。

m0_57836225的博客 1761

Dubbo的大厂高频面试题

大家好,我是程序员贵哥(抖音号:1717983460)。今天我们来聊一聊Dubbo的大厂高频面试题。大厂面试,一般重点考察对技术理解的深度,和中小厂的区别在于,不仅要你精于实战,还要你深懂原理,勤于思考并针对功能进行合理的设计。

qq_33240556的博客 1071

简单Dubbo与MyBatis面试题

插播面试题 dubbo的原理是怎么样的?请简单谈谈 有没有考虑过自己实现一个类似dubbo的RPC框架,如果有,请问你会如果着手实现?(面试高频题,区分度高) 你说你用过mybatis,那你知道Mapper接口的原理吗?(如果回答得不错,并且提到动态代理这个关键词会继续往下问,那这个动态代理又是如何通过依赖注入到Mapper接口的呢?) 直入主题 简单原理...

weixin_34010566的博客 237

Dubbo常见面试题

关注Java后端技术栈“回复“面试”获取最新资料其实关于Dubbo的面试题,我觉得最好的文档应该还是官网,因为官网有中文版,照顾了很多阅读英文文档吃力的小伙伴。但是官网内容挺多的,于是这...

田维常 1448

中小厂的Dubbo高频面试题

大家好,我是程序员贵哥(抖音号:1717983460)。今天我们来聊一聊中小厂的Dubbo高频面试题。中小厂,招你进来是要立马干活的,需要你面对快节奏的迭代需求,能根据架构师分配的任务,独立自主开发。所以,。如果你对基础知识掌握不牢,完成需求交付,本来就比较耗费时间,如果交付过程中还因为各种基础的技术问题研究老半天,就少不了加班加点来还技术债。面试中问到 Dubbo,一般会问平常工作中常用的基础知识点,主要是考察你对基础知识点的掌握程度,对 Dubbo 是否拥有足够扎实的基础知识面,来评判。

qq_33240556的博客 1038

Dubbo-常见面试题-总结

ˈdʌbəʊ| 是一款高性能、轻量级的开源 Java RPC 框架。根据Dubbo 官方文档open in new window的介绍,Dubbo 提供了六大核心能力面向接口代理的高性能RPC调用。智能容错和负载均衡。服务自动注册和发现。高度可扩展能力。运行期流量调度。可视化的服务治理与运维。简单来说就是:Dubbo 不光可以帮助我们调用远程服务,还提供了一些其他开箱即用的功能比如智能负载均衡。Dubbo 目前已经有接近 34.4 k 的 Star。在。

Java程序员的知识博客 1128
上一篇: 关系型数据库遵循ACID规则理解
下一篇: Java 八大基本数据类型
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿甘带你学java

感谢支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值