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的各个组件都需要部署在单独服务器上,接受服务请求、聚合服务。

点评:

相关推荐
小王不爱笑13239 分钟前
IO 模型
开发语言·python
短剑重铸之日1 小时前
《ShardingSphere解读》07 读写分离:如何集成分库分表+数据库主从架构?
java·数据库·后端·架构·shardingsphere·分库分表
知我Deja_Vu1 小时前
【避坑指南】ConcurrentHashMap 并发计数优化实战
java·开发语言·python
AI+程序员在路上1 小时前
CANopen 协议:介绍、调试命令与应用
linux·c语言·开发语言·网络
2401_831824961 小时前
基于C++的区块链实现
开发语言·c++·算法
m0_518019482 小时前
C++与机器学习框架
开发语言·c++·算法
ZTLJQ2 小时前
深入理解逻辑回归:从数学原理到实战应用
开发语言·python·机器学习
qq_417695052 小时前
C++中的代理模式高级应用
开发语言·c++·算法
daidaidaiyu2 小时前
Spring IOC 源码学习 事务相关的 BeanDefinition 解析过程 (XML)
java·spring
波波0073 小时前
每日一题:.NET 中的“反射”是什么?
开发语言·.net