Skip to content

题目10:RPC 与微服务治理 ​

📊 评分:— | 📅 完成时间:待完成


📝 题目 ​

你们项目里的服务之间是如何通信的?一次 RPC 调用大致经过哪些步骤?服务注册发现、负载均衡、超时重试、熔断降级一般是怎么做的?


💬 我的回答 ​


📖 参考答案 ​

一、RPC 调用流程 ​

  1. 消费方通过代理发起调用
  2. 根据服务名从注册中心拿到服务列表
  3. 负载均衡选择一个实例
  4. 通过网络协议发起远程调用
  5. 服务端反序列化、执行业务、返回结果

二、服务治理常见能力 ​

  • 注册发现:Nacos、Eureka、ZooKeeper
  • 负载均衡:随机、轮询、一致性哈希、最少活跃数
  • 超时重试:防止单次调用长时间阻塞
  • 熔断降级:下游异常时快速失败,保护系统
  • 限流隔离:防止故障扩散

三、面试重点 ​

  • 说清楚本地调用和远程调用的区别
  • 说清楚序列化、网络通信、服务治理三个层面
  • 重试必须强调幂等风险

🎯 面试标准话术 ​

"一次 RPC 调用本质上是本地代理 + 服务发现 + 负载均衡 + 网络通信 + 序列化反序列化。真正难点不在于调通,而在于治理,包括超时、重试、熔断、限流和链路追踪。"

努力工作 享受生活