分布式服务RPC面试题及详细答案(实战口语版).docxVIP

  • 0
  • 0
  • 约5.54千字
  • 约 8页
  • 2026-07-07 发布于河北
  • 举报

分布式服务RPC面试题及详细答案(实战口语版).docx

分布式服务RPC面试题及详细答案(实战口语版)

一、RPC基础认知(初级必问)

1、什么是RPC?为什么要用RPC,不能直接用HTTP吗?

参考答案:

RPC就是远程过程调用,简单说就是本地代码像调用本地方法一样,直接调用另一台服务器上的方法,不用自己处理网络连接、数据收发这些底层逻辑。

HTTP也能实现远程调用,但微服务内部服务之间的通信,基本都会用RPC,核心原因就三点:

第一、性能更高。HTTP基于文本协议,头信息大、冗余多;RPC一般用二进制协议,序列化后数据体积小、解析快,吞吐和延迟都比HTTP好很多,适合高频服务调用。

第二、更贴合服务调用场景。RPC是面向方法的,直接定义接口、参数、返回值,代码调用极简;HTTP是面向资源的,需要手动写URL、请求头、参数拼接,开发效率低,还容易出错。

第三、自带服务治理能力。主流RPC框架(Dubbo、gRPC、Feign)天生集成注册发现、负载均衡、重试、熔断、超时控制,HTTP要自己额外集成组件,适配微服务很麻烦。

补充:对外给前端、第三方调用,一般用HTTP;服务内部互通,优先RPC。

2、RPC的核心调用流程是什么?简单梳理一遍

参考答案:

整个流程一共7步,没有复杂概念,都是实际运行逻辑:

1.客户端发起调用:业务代码直接调用本地的接口方法,看起来像本地调用;

2.客户端代理拦截:RPC框架的动态代理拦截这个方法调用

文档评论(0)

1亿VIP精品文档

相关文档