1 个不稳定版本
使用旧的Rust 2015
0.3.2 | 2018年7月14日 |
---|---|
0.3.1 |
|
0.3.0 |
|
#37 in #http2
25MB
553K SLoC
gRPC-rs
gRPC-rs
是gRPC核心的Rust包装器。 gRPC 是一个高性能、开源的通用RPC框架,优先考虑移动设备和HTTP/2。
状态
该项目仍在开发中。以下带有勾选标记的功能受支持
- 基本的异步单例/流式调用
- SSL
- 泛型调用
- 连接级别压缩
- 互操作性测试
- QPS基准测试
- 自定义元数据
- 健康检查
- 反射
- 身份验证
- 负载均衡
先决条件
- CMake >= 3.8.0
- Rust >= 1.19.0
- 如果您想启用安全功能,需要Go (>=1.7)。
对于Linux和MacOS,您还需要安装gcc(或clang)。
对于Windows,您还需要安装以下软件
- Active State Perl
- yasm
- Visual Studio 2015+
构建
$ cargo build
用法
从proto文件生成源代码
选项1 - 手动生成
- 安装protobuf编译器
$ cargo install protobuf-codegen
- 安装gRPC编译器
$ cargo install grpcio-compiler
- 生成源代码
$ protoc --rust_out=. --grpc_out=. --plugin=protoc-gen-grpc=`which grpc_rust_plugin` example.proto
选项2 - 程序生成
程序生成可用于通过您的 build.rs
从proto文件生成Rust模块,使用 protoc-grpcio。
有关更多信息示例,请参阅 README。
将此项目作为依赖项包含
[dependencies]
grpcio = "0.3"
功能 secure
secure
功能启用对TLS加密和一些身份验证机制的支持。当您不需要它时,例如在内部网络中工作时,您可以通过以下配置禁用它
[dependencies]
grpcio = { version = "0.3", default-features = false, features = ["protobuf-codec"] }
性能
有关如何自行运行基准测试的信息,请参阅 基准测试。