grpc/grpc

GitHub Trending (daily) 工具

摘要

gRPC 是一个现代、开源、高性能的远程过程调用(RPC)框架,它使客户端和服务器应用程序能够透明地进行通信。

基于C++的gRPC (C++, Python, Ruby, Objective-C, PHP, C#)
查看原文
查看缓存全文

缓存时间: 2026/07/10 12:09

grpc/grpc 源代码:https://github.com/grpc/grpc

gRPC – 一个 RPC 库和框架

gRPC 是一个现代的、开源的、高性能远程过程调用(RPC)框架,可在任何环境下运行。gRPC 实现了客户端和服务器应用程序之间的透明通信,并简化了连接系统的构建。

主页:grpc.io
邮件列表:[email protected]
加入聊天室:https://gitter.im/grpc/grpc(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 目录下的说明操作
  • C#/.NET (https://github.com/grpc/grpc-dotnet):NuGet 包 Grpc.Net.ClientGrpc.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:将 gRPC-ProtoRPC 依赖添加到 podspec
  • PHPpecl install grpc
  • Pythonpip install grpcio
  • Rubygem install grpc
  • WebJS (https://github.com/grpc/grpc-web):按照 grpc-web 的说明操作

每种语言的快速入门指南和教程可在 grpc.io 网站 (https://grpc.io/docs/) 的文档部分找到。代码示例在 examples 目录中。

gRPC master 分支 HEAD 的预编译前沿版本构建包每天会被上传到 packages.grpc.io (https://packages.grpc.io)。

开始开发 gRPC

欢迎贡献!请阅读 如何贡献,它将指导您完成整个工作流程:如何构建源代码、如何运行测试以及如何向 gRPC 代码库贡献更改。

有关详细的 C++ 构建说明,请参阅 从源代码构建
“如何贡献”文档还包含有关贡献过程如何运作的信息以及创建贡献的最佳实践建议。

故障排除

有时事情会出错。如果您在使用 gRPC 时遇到问题,请查看 故障排除指南

性能

有关 master 分支每日构建的性能数据,请参阅性能仪表板 (https://grafana-dot-grpc-testing.appspot.com/)。

概念

参见 gRPC 概念

关于此仓库

此仓库包含在共享的 C++ 核心库 src/core 之上实现的多种语言的 gRPC 库的源代码。不同语言的库可能处于不同的开发阶段。我们欢迎对所有这些库做出贡献:

语言源代码
共享 C++ [核心库]src/core
C++src/cpp
Rubysrc/ruby
Pythonsrc/python
PHPsrc/php
C#(基于核心库)src/csharp
Objective-Csrc/objective-c
语言源代码仓库
Javagrpc-java (https://github.com/grpc/grpc-java)
Kotlingrpc-kotlin (https://github.com/grpc/grpc-kotlin)
Gogrpc-go (https://github.com/grpc/grpc-go)
NodeJSgrpc-node (https://github.com/grpc/grpc-node)
WebJSgrpc-web (https://github.com/grpc/grpc-web)
Dartgrpc-dart (https://github.com/grpc/grpc-dart)
.NET(纯 C# 实现)grpc-dotnet (https://github.com/grpc/grpc-dotnet)
Swiftgrpc-swift (https://github.com/grpc/grpc-swift)

相似文章

grnlght

Product Hunt

grnlght 是一个客户交付系统,旨在简化并推动工作进展。

RPCForge

Product Hunt

RPCForge 是一款主打用户所有权和控制的多链以太坊 RPC 解决方案产品发布。

使用 Gradio 后端构建任意自定义前端

Hugging Face Blog

Hugging Face 推出 `gradio.Server`,一款全新工具,让开发者能够将 Gradio 的后端基础设施(队列、托管)与使用 React、Svelte 或纯 HTML/CSS/JS 构建的自定义前端结合使用。