1. 背景介绍
gRPC全称Google Remote Procedure Call. 它是一种基于Protobuf buffer 格式的高效的通讯协议。与许多 RPC 系统一样,gRPC 基于定义服务的理念,指定可以远程调用的方法及其参数和返回类型。在服务器端,服务器实现此接口并运行 gRPC 服务器以处理客户端调用。在客户端,客户端具有一个存根(在某些语言中称为客户端),它提供与服务器相同的 方法。
2. 快速入门
安装 cmake
您需要 cmake 的 3.13 版或更高版本。请按照以下说明进行安装
- Linux
sudo apt install -y cmake
- macOS
brew install cmake
安装其他必需工具
- Linux
sudo apt install -y build-essential autoconf libtool pkg-config
- macOS
brew install autoconf automake libtool pkg-config
克隆 grpc 仓库
设置安装路径
export MY_INSTALL_DIR=$HOME/.local
mkdir -p $MY_INSTALL_DIR
export PATH="$MY_INSTALL_DIR/bin:$PATH"
使用cmake进行源码编译
git clone --recurse-submodules -b v1.62.0 --depth 1 --shallow-submodules https://github.com/grpc/grpc
cd grpc
mkdir -p cmake/build
cd cmake/build
cmake -DgRPC_INSTALL=ON \
-DgRPC_BUILD_TESTS=OFF \
-DCMAKE_INSTALL_PREFIX=$MY_INSTALL_DIR \
../..
make -j32
make insatll
cd -
重要
我们强烈建议您本地安装 gRPC——使用适当设置的 CMAKE_INSTALL_PREFIX——因为在您全局安装 gRPC 后,没有简单的方法将其卸载。
用例测试
cd examples/cpp/helloworld
mkdir -p cmake/build
pushd cmake/build
cmake ../..
make -j 4
运行服务器
./greeter_server
运行终端
./greeter_client
>>> Greeter received: Hello world
恭喜!您刚刚使用 gRPC 运行了一个客户端-服务器应用程序。