小红花·文摘
  • 首页
  • AI Tokens🪙
  • 排行榜🏆
  • 直播
  • FAQ
从RPC到gRPC:理解远程过程调用、Protocol Buffers与现代分布式系统通信

本文介绍gRPC框架,一种用于分布式系统间高效通信的远程过程调用(RPC)技术。它利用Protocol Buffers(protobuf)进行紧凑的二进制数据序列化,并通过HTTP/2实现多路复用和流式传输。文章详细阐述了四种通信模式(一元、服务器流、客户端流、双向流),并展示了在Flutter应用中的完整实现,包括认证、错误处理等生产级考量。最后对比了gRPC与REST、WebSockets的适用场景,强调混合架构的重要性。

从RPC到gRPC:理解远程过程调用、Protocol Buffers与现代分布式系统通信

freeCodeCamp.org freeCodeCamp.org · 2026-07-22T22:36:09Z

在Debian Trixie上安装Google::ProtocolBuffers::Dynamic时,需要安装build-essential、cmake、libprotobuf-dev和libprotoc-dev这几个包,尤其是libprotoc-dev常常引发问题。

在Debian Trixie上编译Google::ProtocolBuffers::Dynamic

blogs.perl.org blogs.perl.org · 2026-04-16T23:52:36Z

本文讨论了在Perl中使用Protocol Buffers的经验与最佳实践。作者指出Google::ProtocolBuffers已存在十年,可能不再适用,而Google::ProtocolBuffers::Dynamic是更好的选择,但在Debian Trixie上无法编译。此外,作者提到同事创建了一个纯Perl库并上传至GitHub,并表达了对Thrift的喜爱,尽管其未能获得广泛关注。

在Perl中使用Protocol Buffers(Protobuf)

blogs.perl.org blogs.perl.org · 2026-03-07T14:02:42Z
AWS Lambda 原生支持 Avro 和 Protobuf 格式的 Kafka 事件,并实现模式注册中心集成

AWS Lambda现已原生支持Apache Avro和Protocol Buffers格式,简化了与Apache Kafka的集成。此功能支持与多个模式注册中心对接,自动处理事件验证和解码,降低开发复杂性。开发者可通过Kafka开源接口构建函数,优化计算成本,并在ESM层过滤事件。适用于所有AWS Lambda Kafka ESM可用区域。

AWS Lambda 原生支持 Avro 和 Protobuf 格式的 Kafka 事件,并实现模式注册中心集成

InfoQ InfoQ · 2025-06-27T10:00:00Z
如何在Go中动态调用gRPC方法

gRPC是一个高性能的开源框架,基于HTTP/2和Protocol Buffers实现远程过程调用。与传统REST API相比,gRPC在性能和类型安全性上更具优势。服务反射简化了服务发现,但增加了网络开销;直接使用proto文件则更高效,但需保持同步。

如何在Go中动态调用gRPC方法

DEV Community DEV Community · 2025-05-10T20:49:23Z
为什么gRPC是一个优秀的选择

gRPC是一个高性能的开源框架,基于HTTP/2和Protocol Buffers,适合高效的应用间通信。它支持双向流、强类型接口和多语言兼容,特别适用于微服务架构和实时数据流。与传统的REST和WebSockets相比,gRPC在性能、错误处理和自动代码生成方面具有显著优势。

为什么gRPC是一个优秀的选择

DEV Community DEV Community · 2025-04-08T19:08:27Z
告别JSON - 欢迎Protobuf:一种更强大的替代方案

JSON易读但在大型应用中效率较低。Protocol Buffers(Protobuf)通过二进制编码实现更快的数据传输和更好的兼容性,适合移动应用和实时系统。

告别JSON - 欢迎Protobuf:一种更强大的替代方案

DEV Community DEV Community · 2025-03-23T20:56:18Z
使用Go语言的gRPC和Protocol Buffers入门

本文介绍了如何在Go中使用gRPC和Protocol Buffers实现一个简单的计算器服务,包括接口定义、代码生成和客户端调用,适合需要高效数据传输的微服务架构。

使用Go语言的gRPC和Protocol Buffers入门

DEV Community DEV Community · 2025-02-21T20:12:27Z

本文探讨了gRPC及其应用中的注意事项,强调Protocol Buffers字段编号对数据序列化和版本兼容性的重要性。重新编译时,系统自动生成接口代码,减少手动操作风险。理解字段编号有助于高效数据传输和版本兼容。

gRPC编译与字段编号的细节探讨 - 努力的小雨

努力的小雨 努力的小雨 · 2025-01-02T01:24:00Z
掌握高效的数据序列化:提升Go应用的性能与可扩展性

数据序列化在现代软件开发中尤为重要,特别是在分布式系统和微服务架构中。Go语言支持多种序列化格式,常用的有JSON和Protocol Buffers。虽然JSON易于阅读,但在高性能应用中,Protocol Buffers和MessagePack更为高效。实现序列化时需关注错误处理、版本控制和安全性,以优化性能和资源利用。

掌握高效的数据序列化:提升Go应用的性能与可扩展性

DEV Community DEV Community · 2024-12-20T09:33:36Z
理解协议缓冲区:JSON的快速替代方案

JSON因其简单易读而广受欢迎,但在系统扩展时可能成为瓶颈。Google的Protocol Buffers(Protobuf)是一种高效、紧凑的二进制数据序列化格式,适合现代应用。Protobuf比JSON更小、更快,支持模式演变,适合高流量或带宽受限的场景。选择JSON或Protobuf取决于具体需求。

理解协议缓冲区:JSON的快速替代方案

DEV Community DEV Community · 2024-12-15T20:36:23Z
使用gRPC在Rust中构建身份验证API的逐步指南 | 第二部分

本文介绍了如何使用Protocol Buffers定义gRPC服务接口,重点在身份验证服务的消息类型和方法,包括创建OTP挑战、确认OTP、用户注册和登录。定义了请求和响应的消息格式,涵盖用户信息和错误类型。接下来将编写脚本生成Rust代码。

使用gRPC在Rust中构建身份验证API的逐步指南 | 第二部分

DEV Community DEV Community · 2024-12-04T17:53:03Z
gRPC的工作原理

gRPC是一个高性能的开源RPC框架,基于HTTP/2和Protocol Buffers,适用于微服务和分布式系统,提供高效通信和灵活API设计。

gRPC的工作原理

DEV Community DEV Community · 2024-12-04T04:42:51Z
使用gRPC的强类型Web API

本文介绍了如何使用gRPC框架确保客户端与服务器之间消息内容的一致性。gRPC支持跨平台通信,使用Protocol Buffers定义API,提供单一真相源和清晰的升级路径。虽然浏览器应用通常使用JSON格式,但也可以通过HTTP内容协商支持Protocol Buffers。Typescript可用于类型检查,确保消息内容匹配,简化API接口生成。未来将探讨C#/.NET服务器与Typescript/React应用的交互。

使用gRPC的强类型Web API

DEV Community DEV Community · 2024-11-07T14:46:11Z

文章介绍了gRPC的基础知识及其与RPC和REST的区别。gRPC由Google开发,利用HTTP/2和Protocol Buffers实现高效数据传输,具备多路复用和头部压缩等优势。文章还提供了gRPC服务和客户端的实现示例,展示其在大数据处理中的优越性,是REST API的有效替代方案。

gRPC:从历史背景到实际应用的全景!

DEV Community DEV Community · 2024-10-20T18:36:29Z
gRPC与Go:构建高性能网络服务

gRPC是Google开发的高性能RPC框架,结合Go语言可构建强大的网络服务。它使用HTTP/2和Protocol Buffers,支持多语言、流式传输等功能。文章介绍了在Go中安装工具、定义服务、生成代码、实现服务器和客户端,展示了其高效性和可维护性。

gRPC与Go:构建高性能网络服务

DEV Community DEV Community · 2024-09-30T10:08:37Z
Lyft 推广协作式 Protocol Buffers 设计的最佳实践

Lyft分享了使用Protocol Buffers进行系统间集成的经验,重点是团队和系统之间共享定义的协作协议设计。

Lyft 推广协作式 Protocol Buffers 设计的最佳实践

InfoQ InfoQ · 2024-09-12T06:00:00Z
Canva选择Amazon KDS而非SNS+SQS,每日处理250亿事件,节省85%成本

Canva选择了Amazon Kinesis Data Stream作为其产品分析平台的数据处理解决方案,以降低成本。团队使用SQS和SNS实现了事件驱动架构,但成本占据了80%。为了提高效率,团队选择了KDS并使用事件批处理和压缩技术。同时,他们还使用SQS作为备用机制。Canva还使用Protocol Buffers来定义事件架构。

Canva选择Amazon KDS而非SNS+SQS,每日处理250亿事件,节省85%成本

InfoQ InfoQ · 2024-08-07T12:00:00Z

协议缓冲区3移除了“必需”和“可选”关键字,允许在数据正确性上有更大的灵活性。它将空值和默认值视为等同,简化了设计并减少了存储空间。这与“少即是多”的原则一致。

设计思考 – Protocol Buffers 3 为什么这样设计

六虎 六虎 · 2024-04-10T02:23:39Z
安全手册:一站式知识和工具集 | 开源日报 0902

开源日报安全手册提供了Rust语言教程、系统管理工具、Google的Protocol Buffers、Astro网站构建工具及AIdea应用等,旨在帮助开发者解决实际问题,提升学习和开发体验。

安全手册:一站式知识和工具集 | 开源日报 0902

开源服务指南 开源服务指南 · 2023-11-23T06:04:56Z
  • <<
  • <
  • 1 (current)
  • 2
  • >
  • >>
👤 个人中心
在公众号发送验证码完成验证
登录验证
在本设备完成一次验证即可继续使用

完成下面两步后,将自动完成登录并继续当前操作。

1 关注公众号
小红花技术领袖公众号二维码
小红花技术领袖
如果当前 App 无法识别二维码,请在微信搜索并关注该公众号
2 发送验证码
在公众号对话中发送下面 4 位验证码
小红花技术领袖俱乐部
小红花·文摘:汇聚分发优质内容
小红花技术领袖俱乐部
Copyright © 2021-
粤ICP备2022094092号-1
公众号 小红花技术领袖俱乐部公众号二维码
视频号 小红花技术领袖俱乐部视频号二维码