gRPC - 一个 RPC 库和框架
gRPC 是一个现代、开源、高性能的远程过程调用 (RPC) 框架,可以在任何位置运行。gRPC 使客户端和服务器应用程序能够透明地通信,并简化了构建连接系统的过程。
主页 | grpc.io |
邮件列表 | [email protected] |
开始使用 gRPC
为了最大化可用性,gRPC 支持向用户选择的用户语言添加依赖的标准方法(如果有的话)。在大多数语言中,gRPC 运行时以包的形式提供,用户可以在其语言包管理器中获取。
有关如何使用特定语言的 gRPC 运行时为项目创建文档,请参阅这些文档
- C++: 在
src/cpp
目录下遵循说明 - C#: NuGet 包
Grpc
- Dart: pub 包
grpc
- Go:
go get google.golang.org/grpc
- Java: 使用 Maven Central 仓库中的 JAR
- Kotlin: 使用 Maven Central 仓库中的 JAR
- Node:
npm install grpc
- Objective-C: 将
gRPC-ProtoRPC
依赖项添加到 podspec - PHP:
pecl install grpc
- Python:
pip install grpcio
- Ruby:
gem install grpc
- WebJS: 遵循 grpc-web 指示
可以在 grpc.io 网站的文档部分 找到特定语言的快速入门指南和教程。代码示例可在 examples 目录中找到。
gRPC `master
` 分支的 `HEAD
` 的预编译边缘包构建每天上传到 packages.grpc.io。
开始开发gRPC
欢迎贡献!
请阅读如何贡献,该文档将指导您如何构建源代码、如何运行测试以及如何向gRPC代码库贡献更改。有关贡献过程的详细信息,以及创建贡献的最佳实践,也包含在“如何贡献”文档中。
故障排除
有时候会遇到问题。如果您在gRPC中遇到问题,请查看故障排除指南。
性能
查看性能仪表板,了解master分支每日构建的性能数据。
概念
请参阅gRPC概念
关于此仓库
此仓库包含在共享的C核心库(src/core)之上实现的多语言gRPC库的源代码。
不同语言的库可能处于不同的开发状态。我们寻求对这些所有库的贡献。
语言 | 源 |
---|---|
共享C [核心库] | src/core |
C++ | src/cpp |
Ruby | src/ruby |
Python | src/python |
PHP | src/php |
C#(基于核心库) | src/csharp |
Objective-C | src/objective-c |
语言 | 源代码库 |
---|---|
Java | grpc-java |
卡塔尔 | grpc-kotlin |
Go | grpc-go |
NodeJS | grpc-node |
WebJS | grpc-web |
达特 | grpc-dart |
.NET (纯 C# 实现.) | grpc-dotnet |