当前位置: 首页 > news >正文

面试真题 | 百度C++研发工程师面经

文章目录

    • 你认为RPC框架由哪几部分构成
      • 面试官可能进行的追问及建议的回答
    • protobuf有那些优点,项目当中是如何调试二进制字符流的
      • Protobuf的优点
      • 项目中调试二进制字符流的方法
      • 面试官可能进行的追问及建议的回答
    • 负载均衡是如何做的
      • 负载均衡的实现方式
      • 负载均衡的优势
      • 面试官可能进行的追问及建议的回答
    • C++的内存管理,有哪些可能导致内存泄露的地方
      • 面试官可能进行的追问及建议的回答
    • 介绍一下智能指针
      • 面试官可能进行的追问及建议的回答
    • 手撕shared_ptr
      • 简化的shared_ptr实现
      • 面试官可能提出的深入问题及其答案
    • 手撕strcpy(),说明有什么漏洞
      • 手写`strcpy()`函数
      • 漏洞说明
      • 面试官可能进行的追问及建议的回答
    • 手撕二叉树的遍历,用迭代法,求最大深度,最大路径代价
      • 二叉树的遍历(迭代法)
      • 求二叉树的最大深度
      • 求二叉树的最大路径代价
      • 面试官可能的追问及回答
    • 反问


一面:0808 50min

你认为RPC框架由哪几部分构成

RPC(Remote Procedure Call)框架是一种实现远程过程调用的技术框架,它允许一个程序在不同的地址空间中调用另一个程序中的函数或方法,就像调用本地函数一样。在C++环境中,RPC框架通常由以下几个核心部分构成:

  1. 客户端(Client)

    • 服务请求方,负责发起远程调用请求。
    • 客户端存根(Client Stub):作为客户端和服务端之间的中间层,负责将客户端的请求参数打包成网络消息,并通过网络发送给服务端。同时,它还负责接收服务端返回的结果,并将其反序列化为客户端可以理解的格式。
  2. 服务端(Server)

    • 服务的提供者,负责处理来自客户端的请求。
    • 服务端存根(Server Stub):接收客户端发送的请求消息,进行解码(反序列化),然后调用本地服务进行处理。处理

http://www.mrgr.cn/news/49374.html

相关文章:

  • 动态规划最大子段和讲解和【题解】——最大子段和
  • springcloud之服务提供与负载均衡调用 Eureka
  • 『香驰控股』上线采购数字化平台,企企通助推农业产业化国家重点龙头提升供应链价值
  • AttributeError: ‘str‘ Object Has No Attribute ‘x‘:字符串对象没有属性x的完美解决方法
  • 【优选算法篇】双指针的优雅舞步:C++ 算法世界的浪漫探索
  • 【C++】— 类和对象(3)
  • 麒麟系统离线安装英伟达驱动
  • ThreadLocal-共享变量
  • 【微服务】springboot远程docker进行debug调试使用详解
  • 为什么Python代码需要遵守Pythonic风格?
  • MarsCode--大数和距离【中等】
  • 基于Android的小型冷库管理系统(论文+源码)-kaic
  • 第二讲、C语言的常量和变量
  • 双向广搜 [NOIP2002 提高组] 字串变换————洛谷p1032
  • 基于单片机的 16 键多功能电子琴硬件设计
  • types.MethodType
  • 使用dotnet-counters和dotnet-dump 分析.NET Core 项目内存占用问题
  • Nodejs+Vue菜鸟驿站仓库管理系统的设计与实现 (论文+源码)-kaic
  • 使用 Python 爬虫批量下载百度图片的详细教程
  • C++:模拟stack、queue