gRPC – 一个 RPC 库和框架
gRPC 是一个现代、开源、高性能的远程过程调用 (RPC) 框架,它可以在任何地方运行。gRPC 允许客户端和服务器应用程序透明地通信,并简化了连接系统的构建。
| 主页 | grpc.io |
| 邮件列表 | <[email protected]> |
开始使用 gRPC
为了最大限度地提高可用性,gRPC 支持为用户的语言(如果有)添加依赖项的标准方法。在大多数语言中,gRPC 运行时以用户语言包管理器中可用的包的形式提供。
有关如何为项目使用特定语言的 gRPC 运行时的说明,请参阅以下文档
- C++:在
src/cpp目录下遵循说明 - C#/.NET:NuGet 包
Grpc.Net.Client、Grpc.AspNetCore.Server - Dart:pub 包
grpc - Go:运行
go get google.golang.org/grpc - Java:使用 Maven Central 仓库中的 JAR
- Kotlin:使用 Maven Central 仓库中的 JAR
- Node:运行
npm install @grpc/grpc-js - Objective-C:向 podspec 添加
gRPC-ProtoRPC依赖项 - PHP:运行
pecl install grpc - Python:
pip install grpcio - Ruby:
gem install grpc - WebJS: 按照grpc-web说明操作
语言快速入门指南和教程可在grpc.io网站上的文档部分找到。代码示例可在示例目录中找到。
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 |
| Kotlin | grpc-kotlin |
| Go | grpc-go |
| NodeJS | grpc-node |
| WebJS | grpc-web |
| Dart | grpc-dart |
| .NET(纯 C# 实现) | grpc-dotnet |
| Swift | grpc-swift |