grpc/grpc

GitHub: grpc/grpc

Google 开源的高性能 RPC 框架,基于 HTTP/2 和 Protobuf 实现多语言支持的远程过程调用。

Stars: 44439 | Forks: 11069

# gRPC – RPC 库和框架 gRPC 是一个现代、开源、高性能的远程过程调用 (RPC) 框架,可以在任何环境中运行。gRPC 使客户端和服务器应用程序能够透明地通信,并简化了连接系统的构建。
主页: grpc.io
邮件列表: grpc-io@googlegroups.com
[![Join the chat at https://gitter.im/grpc/grpc](https://badges.gitter.im/grpc/grpc.svg)](https://gitter.im/grpc/grpc?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) ## 开始使用 gRPC 为了最大化可用性,gRPC 支持将依赖项添加到用户选定语言的标准方法(如果有的话)。在大多数语言中,gRPC 运行时以包的形式提供,可在用户的语言包管理器中获取。 有关如何在项目中使用特定语言的 gRPC 运行时的说明,请参考以下文档 - [C++](src/cpp):遵循 `src/cpp` 目录下的说明 - [C#/.NET](https://github.com/grpc/grpc-dotnet):NuGet 包 `Grpc.Net.Client`、`Grpc.AspNetCore.Server` - [Dart](https://github.com/grpc/grpc-dart):pub 包 `grpc` - [Go](https://github.com/grpc/grpc-go):`go get google.golang.org/grpc` - [Java](https://github.com/grpc/grpc-java):使用来自 Maven Central Repository 的 JAR - [Kotlin](https://github.com/grpc/grpc-kotlin):使用来自 Maven Central Repository 的 JAR - [Node](https://github.com/grpc/grpc-node):`npm install @grpc/grpc-js` - [Objective-C](src/objective-c):将 `gRPC-ProtoRPC` 依赖项添加到 podspec - [PHP](src/php):`pecl install grpc` - [Python](src/python/grpcio):`pip install grpcio` - [Ruby](src/ruby):`gem install grpc` - [WebJS](https://github.com/grpc/grpc-web):遵循 grpc-web 说明 各语言的快速入门指南和教程可以在 [grpc.io 网站的文档部分](https://grpc.io/docs/)找到。代码示例可在 [examples](examples) 目录中找到。 gRPC `master` 分支 `HEAD` 的预编译前沿版本每日构建会上传至 [packages.grpc.io](https://packages.grpc.io)。 ## 开始开发 gRPC 欢迎贡献! 请阅读 [如何贡献](CONTRIBUTING.md),它将指导您完成整个工作流程,包括如何构建源代码、如何运行测试以及如何向 gRPC 代码库贡献更改。“如何贡献”文档还包含有关贡献流程如何运作的信息,并提供了创建贡献的最佳实践。 ## 故障排除 有时事情会出错。如果您遇到 gRPC 问题,请查看 [故障排除指南](TROUBLESHOOTING.md)。 ## 性能 请参阅 [性能仪表板](https://grafana-dot-grpc-testing.appspot.com/) 获取 master 分支每日构建的性能数据。 ## 概念 请参阅 [gRPC 概念](CONCEPTS.md) ## 关于此仓库 此仓库包含基于共享 C++ 核心库 [src/core](src/core) 实现的多种语言的 gRPC 库源代码。 不同语言的库可能处于不同的开发阶段。我们正在寻求对所有这些库的贡献: 语言 | 源码 ------------------------- | ---------------------------------- 共享 C++ [核心库] | [src/core](src/core) C++ | [src/cpp](src/cpp) Ruby | [src/ruby](src/ruby) Python | [src/python](src/python) PHP | [src/php](src/php) C# (基于核心库) | [src/csharp](src/csharp) Objective-C | [src/objective-c](src/objective-c) 语言 | 源码仓库 -------------------- | -------------------------------------------------- Java | [grpc-java](https://github.com/grpc/grpc-java) Kotlin | [grpc-kotlin](https://github.com/grpc/grpc-kotlin) Go | [grpc-go](https://github.com/grpc/grpc-go) NodeJS | [grpc-node](https://github.com/grpc/grpc-node) WebJS | [grpc-web](https://github.com/grpc/grpc-web) Dart | [grpc-dart](https://github.com/grpc/grpc-dart) .NET (纯 C# 实现) | [grpc-dotnet](https://github.com/grpc/grpc-dotnet) Swift | [grpc-swift](https://github.com/grpc/grpc-swift)
标签:API网关, C++, Dart, GNU通用公共许可证, Go, HTTP/2, IP 地址批量处理, JS文件枚举, Kotlin, MITM代理, Node.js, Objective-C, OpenVAS, PHP, Protocol Buffers, Python, RPC框架, Ruby, Ruby工具, 分布式系统, 后端开发, 响应大小分析, 多语言支持, 安全测试框架, 客户端, 序列化, 开源库, 搜索引擎爬虫, 数据擦除, 无后门, 日志审计, 服务端, 知识库, 远程过程调用, 逆向工具, 通信协议