标签: grpc
与该标签相关的所有文章 "grpc".
-
Go RPC:gRPC、HTTP/2 与 proto 契约
gRPC 用 .proto 文件定义服务契约,代码生成器产出强类型的 server 接口和 client stub,通过 HTTP/2 实现单连接多路复用、头部压缩和四种通信模式(unary/server-stream/client-stream/bidi-stream)。核心价值不是"比 REST 快",而是契约即代码、跨语言一致、streaming 原生支持。
-
Go 工具链:Protobuf 的字段编号、Varint 与二进制序列化
Protobuf 用字段编号(而非字段名)标识数据、用 Varint 压缩整数、省略零值字段,实现了比 JSON 小 2-5 倍、快 5-10 倍的序列化性能,同时通过字段编号机制天然支持 schema 前向/后向兼容演化。
-
Go 工具链:Buf 如何替代 protoc 工作流
Buf 用一个 CLI 统一了 protobuf 的构建、lint、breaking change 检测、代码生成、格式化和依赖管理。它替代的不是 protobuf 本身,而是 protoc + 手动管理插件 + Makefile/shell 脚本的传统工作流。核心价值:buf.yaml 定义模块和规则,buf.gen.yaml 定义代码生成,buf generate 一个命令完成所有事。