Python版gRPC入门实验

2020-06-19 00:00:00 专区 开发 服务 定义 协议

什么是RPC

RPC(Remote Procedure Call Protocol)-- 远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络协议的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。


什么是gRPC

gRPC 是Google开源的一款高性能的 RPC 框架,它基于 ProtoBuf 序列化协议进行开发,支持多种开发语言(Golang、Python、Java、C/C++等)。gRPC 提供了一种简单的方法来定义服务,同时客户端可以充分利用 HTTP/2 stream 的特性,从而有助于节省带宽、降低 TCP 的连接次数、节省CPU的使用等。


本文参考官方文档[grpc.html],以及gRPC的GitHub开源项目grpc/grpc。并通过一个小demo展示框架用法。

安装gRPC及gRPC工具

pip install grpcio
pip install grpcio-tools

相关文章