27个版本
0.8.3 | 2021年3月28日 |
---|---|
0.8.2 | 2020年9月20日 |
0.8.1 | 2020年5月25日 |
0.6.2 | 2020年1月14日 |
0.0.1 | 2016年8月23日 |
#13 in #developing
22,097 每月下载量
用于 少于 17 crates
120KB
3K SLoC
grpc-rust
项目已停止开发;新的项目永生
gRPC团队正在 开发新的Rust版gRPC实现,grpc
crate名称已转让给他们。
此代码不再维护。
原始README.md
gRPC协议的Rust实现,正在开发中。
有关FAQ中的一些开发问题。
当前状态
基本可用,但不适合生产使用。
请参见 grpc-examples/src/bin/greeter_{client,server}.rs
。可以用 go客户端 进行测试。
# start greeter server implemented in rust
$ cargo run --bin greeter_server
# ... or start greeter server implemented in go
$ go get -u google.golang.org/grpc/examples/helloworld/greeter_client
$ greeter_server
# start greeter client implemented in rust
$ cargo run --bin greeter_client rust
> message: "Hello rust"
# ... or start greeter client implemented in go
$ go get -u google.golang.org/grpc/examples/helloworld/greeter_client
$ greeter_client rust
> 2016/08/19 05:44:45 Greeting: Hello rust
路由指南
路由指南 示例实现位于 grpc-examples 文件夹。
如何生成Rust代码
有两种方式从.proto文件生成Rust代码
使用 protoc-rust-grpc
crate以程序方式调用protoc
(推荐)
请参阅 protoc-rust-grpc crate 中的readme。
使用 protoc
命令和 protoc-gen-rust-grpc
插件
在项目中使用生成的protos
在Cargo.toml中
[dependencies]
grpc = "~0.8"
protobuf = "2.23"
futures = "~0.3"
[build-dependencies]
protoc-rust-grpc = "~0.8"
待办事项
- 修复性能
- 更多测试
- 特别是,添加更多兼容性测试,它们位于
interop
目录中 - 修复源代码中的所有待办事项
相关项目
- grpc-rs — Rust中gRPC的替代实现,C++实现的包装器
- httpbis — HTTP/2的实现,本实现使用
- rust-protobuf — Google Protocol Buffers的实现
依赖关系
~7MB
~113K SLoC