转载

GRPC:谷歌发布的首款基于HTTP/2和protobuf的RPC框架

GRPC 是一个高性能、开源、通用的RPC框架,面向移动和HTTP/2设计,是由谷歌发布的首款基于Protocol Buffers的RPC框架。

GRPC:谷歌发布的首款基于HTTP/2和protobuf的RPC框架

目前提供C、Java和Go语言版本,这三个版本的源码全都托管在Github上,分别是: grpc ,  grpc-java ,  grpc-go 。其中C版本支持 C , C++ , Node.js , Python , Ruby , Objective-C , PHP 和  C# 。

GRPC基于HTTP/2标准设计,带来诸如双向流、流控、头部压缩、单TCP连接上的多复用请求等特性。这些特性使得其在移动设备上表现更好,更省电和节省空间占用。

服务接口定义实例

使用Protocol Buffers来定义服务:

message HelloRequest {   string greeting = 1; }  message HelloResponse {   string reply = 1; }  service HelloService {   rpc SayHello(HelloRequest) returns (HelloResponse); }

Protocol Buffers简称protobuf是Google公司开发的一种数据描述语言,类似于XML能够将结构化数据序列化,可用于数据存储、通信协议等方面。它不依赖于语言和平台并且可扩展性极强。现阶段官方支持C++、JAVA、Python等三种编程语言,但可以找到大量的几乎涵盖所有语言的第三方拓展包。

正文到此结束
Loading...