JAVA面试题之四谈谈你对RPC框架的理解

面试题之四

谈谈你对RPC框架的理解

难度指数:4星

考察频率:55-60%

开发年限:3年以上

一.RPC是什么?

远程过程调用:Remote Procedure call.可以跨进程,跨越同一个计算机的多个进程、多个JVM或多台计算机之间的进程。

凡是符合该协议的框架,称之为RPC框架。

A 提供服务;B调用A的服务,希望想调用本地方法一样,RPC.

二.技术原理

详见技术图

三.扩展

RPC协议的框架,Dubbo,阿里巴巴的Dubbo,重点描述的内容。

在实际开发的时候,我使用的是Dubbo框架,服务调用、服务治理功能。

Dubbo对比是SpringCloud:

①都需要服务提供方,服务消费方、注册中心,差别不大。

②Dubbo是通过各种Filter定义实现各个组件的融合;

③Dubbo采用的常链接和NIO异步通信,适合场景是小数据量、高并发的服务调用,以及服务消费者及其远大于服务提供者机器数。

④Dubbo服务依赖比较重。

⑤Dubbo的各个组件都需要部署在单独服务器上,接受服务请求、聚合服务。

点评:

相关推荐
weixin_462428479 分钟前
使用 Caffeine 缓存并在业务方法上通过注解实现每3到5秒更新缓存
java·缓存
程序媛小果10 分钟前
基于java+SpringBoot+Vue的桂林旅游景点导游平台设计与实现
java·vue.js·spring boot
骑鱼过海的猫12312 分钟前
【java】java通过s3访问ceph报错
java·ceph·iphone
杨充18 分钟前
13.观察者模式设计思想
java·redis·观察者模式
Lizhihao_20 分钟前
JAVA-队列
java·开发语言
喵叔哟30 分钟前
重构代码之移动字段
java·数据库·重构
喵叔哟30 分钟前
重构代码之取消临时字段
java·前端·重构
fa_lsyk32 分钟前
maven环境搭建
java·maven
远望清一色39 分钟前
基于MATLAB边缘检测博文
开发语言·算法·matlab
何曾参静谧1 小时前
「Py」Python基础篇 之 Python都可以做哪些自动化?
开发语言·python·自动化