windows使用gRPC框架的详细说明

来源:互联网 发布:pd11 for mac 破解版 编辑:程序博客网 时间:2024/05/16 10:55
ProtoBuf 是一套接口描述语言(IDL)和相关工具集(主要是 protoc,基于 C++ 实现),类似 Apache 的 Thrift)。用户写好 .proto 描述文件,之后使用 protoc 可以很容易编译成众多计算机语言(C++、JavaPython、C#、Golang 等)的接口代码。这些代码可以支持 gRPC,也可以不支持。

gRPC 是 Google 开源的 RPC 框架和库,已支持主流计算机语言。底层通信采用 gRPC 协议,比较适合互联网场景。gRPC 在设计上考虑了跟 ProtoBuf 的配合使用。在 gRPC 里客户端应用可以像调用本地对象一样直接调用另一台不同的机器上服务端应用的方法,使得您能够更容易地创建分布式应用和服务。与许多 RPC 系统类似,gRPC 也是基于以下理念:定义一个服务,指定其能够被远程调用的方法(包含参数和返回类型)。在服务端实现这个接口,并运行一个 gRPC 服务器来处理客户端调用。在客户端拥有一个存根能够像服务端一样的方法。

两者分别解决的不同问题,可以配合使用,也可以分开。典型的配合使用场景是,写好 .proto 描述文件定义 RPC 的接口,然后用 protoc(带 gRPC 插件)基于 .proto 模板自动生成客户端和服务端的接口代码。

关于protobuf库的编译生成,我之前的博客中已经具体说明过,这里我主要说一下gRPC框架在windows上的编译生成,关于gRPC的使用直接看官方文档就可以了,有中文版的:http://doc.oschina.net/grpc?t=58008#quickstart

首先,下载安装MSYS2:http://www.msys2.org/

(Download and run the installer - "x86_64" for 64-bit, "i686" for 32-bit Windows)             

一路“下一步”就可以安装好MSYS2.

然后运行msys2.exe脚本,执行如下命令:

1、pacman -Syu       

2、执行完后,关闭终端,重新打开终端执行:pacman -Su

3、pacman -S git

4、pacman -S mingw-w64-i686-grpc

5、panman -S mingw-w64-i686-qt

6、pacman -S mingw-w64-i686-qt-creator

之后就可以在安装的qt creator中添加在msys2/mingw32/lib中的grpc静态库和protobuf静态库!!!然后自己根据官网编写简单的c++工程进行测试,只要你库添加的没问题,测试可以通过。

有任何问题可以评论区提问。