grpc面试题及答案
一、基础概念与原理(30分)
1.什么是gRPC?请简述其核心设计思想以及它默认使用的通信协议和序列化格式。(10分)
答案:gRPC(GoogleRemoteProcedureCall)是一个高性能、开源的RPC框架,由Google开发。其核心设计思想是让客户端和服务器应用程序更容易地构建连接,从而实现分布式系统中的服务调用。gRPC默认使用HTTP/2协议进行通信,并使用ProtocolBuffers(Protobuf)作为接口定义语言(IDL)和序列化格式。
2.gRPC默认使用HTTP/2协议,请简述HTTP/2相比于HTTP/1.1在性能上的主要优势有哪些?(10分)
答案:HTTP/2的主要优势包括:
(1)多路复用(Multiplexing):允许在单个TCP连接上并发发送多个请求和响应,解决了HTTP/1.1中的队头阻塞问题,提高了连接利用率。
(2)二进制分帧:将消息分割为更小的帧,以二进制格式传输,比HTTP/1.1的文本格式解析效率更高。
(3)头部压缩:使用HPACK算法对请求头进行压缩,减少了重复数据的传输量。
3.请对比gRPC与传统RESTfulAPI的区别,并列举gRPC的主要优势。(10分)
答案:主要区别与优势如下:
(1)通信协议:RESTful
原创力文档

文档评论(0)