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 |