主页 > 科技 > 正文

【面试题】dubbo 的工作道理,注册中心挂了能够持续通信吗

2019-05-15 15:11暂无阅读:804评论:0

面试题

说一下的 dubbo 的工作道理?注册中心挂了能够持续通信吗?说说一次 rpc 恳求的流程?面试官心理剖析

MQ、ES、Redis、Dubbo,上来先问你一些思虑性的问题、道理,好比 kafka 高可用架构道理、es 分布式架构道理、redis 线程模型道理、Dubbo 工作道理;之后就是生产情况里或者会碰着的一些问题,因为每种手艺引入之后生产情况都或者会碰着一些问题;再来点综合的,就是系统设计,好比让你设计一个 MQ、设计一个搜刮引擎、设计一个缓存、设计一个 rpc 框架等等。

那既然起头聊分布式系统了,天然重点先聊聊 dubbo 了,究竟 dubbo 是今朝事实上大部门公司的分布式系统的 rpc 框架尺度,基于 dubbo 也能够构建一整套的微办事架构。然则需要本身大量斥地。

当然客岁起头 spring cloud 非常火,如今大量的公司起头转向 spring cloud 了,spring cloud 人家究竟是微办事架构的全家桶式的这么一个器材。然则因为好多公司还在用 dubbo,所以 dubbo 一定会是今朝面试的重点,况且人家 dubbo 如今重启开源社区维护了,捐募给了 apache,将来应该也照样有必然市场和地位的。

既然聊 dubbo,那一定是先从 dubbo 道理起头聊了,你先说说 dubbo 撑持 rpc 分布式挪用的架构啥的,然后说说一次 rpc 恳求 dubbo 是怎么给你完成的,对吧。面试题理会dubbo 工作道理

第一层:service 层,接口层,给办事供应者和消费者来实现的

第二层:config 层,设置层,首要是对 dubbo 进行各类设置的

第三层:proxy 层,办事代理层,无论是 consumer 照样 provider,dubbo 都邑给你生成代理,代理之间进行收集通信

第四层:registry 层,办事注册层,负责办事的注册与发现

第五层:cluster 层,集群层,封装多个办事供应者的路由以及负载平衡,将多个实例组合成一个办事

第六层:monitor 层,监控层,对 rpc 接口的挪用次数和挪用时间进行监控

第七层:protocal 层,长途挪用层,封装 rpc 挪用

第八层:exchange 层,信息交流层,封装恳求响应模式,同步转异步

第九层:transport 层,收集传输层,抽象 mina 和 netty 为统一接口

第十层:serialize 层,数据序列化层工作流程

第一步:provider 向注册中心去注册

第二步:consumer 从注册中心订阅办事,注册中心会通知 consumer 注册好的办事

第三步:consumer 挪用 provider

第四步:consumer 和 provider 都异步通知监控中心

注册中心挂了能够持续通信吗?

能够,因为刚起头初始化的时候,消费者会将供应者的地址等信息拉取到内陆缓存,所以注册中心挂了能够持续通信。