目录

和普通的http相比gRPC有什么好处?

RPC的全称是remote procedure call。

生态优势

rpc没有对具体的编码和解码进行规定,在rpc生态中,有很多rpc框架,google的grpc,阿里的dubbo等,都是对rpc的一种实现,其中grpc出身名门,有大厂背书,并且可以跨语言(dubbo不行),并且gRPC还有Nginx的加持,可以很方便的进行配置证书、负载均衡。由于gRPC是基于HTTP/2的,因此通常只要支持HTTP/2的软件/框架,自然都支持gRPC。

性能优势

  • Protobuf

    grpc的传输使用Protobuf编码,protobuf的压缩率非常高。

  • HTTP/2

https://cdn.cjpa.top/cdnimages/image-20210404004344769.png

开发优势

  • 强类型

    gRPC是一个强类型语言,在写的时候编译器会帮助开发者检查很多东西,只有编写的文件都符合了要求,才能运行。

  • 自动生成SDK

缺点

  • gRPC虽然快,但是一般的场景用不到,只有一些头部大厂会用到
  • 对于web端的支持不成熟
  • gRPC相比较于RESTful生态还不够健全,调试工具比较少