Protobuf.NET
Protobuf.NET 是 Google Protocol Buffers 的 .NET 实现。Protocol Buffers 是 Google 使用的二进制序列化格式,数据紧凑、跨语言、高性能。protobuf-net 让 .NET 类型用特性标注即可序列化,无需 .proto 文件,支持 XML 序列化器切换,性能优异。

项目简介

Protobuf.NET 是 Google Protocol Buffers 的 .NET 实现。Protocol Buffers 是 Google 使用的二进制序列化格式,数据紧凑、跨语言、高性能。protobuf-net 让 .NET 类型用特性标注即可序列化,无需 .proto 文件,支持 XML 序列化器切换,性能优异。

核心功能

高性能序列化
  • 紧凑二进制格式
  • 比JSON快数倍
  • 跨语言互操作
  • 向前/向后兼容
简单用法
  • [ProtoContract]特性
  • [ProtoMember]标注
  • 无需.proto文件
  • 嵌套和集合支持
高级功能
  • 类型模型Schema
  • 运行时元模式
  • 序列化迁移
  • GC低开销

使用方法

  1. 通过NuGet安装protobuf-net
  2. 用ProtoContract/ProtoMember标注类
  3. 使用Serializer.Serialize/Deserialize
  4. 写入流或字节数组

适用场景

  • 高性能数据通信
  • 跨服务数据序列化
  • 缓存存储
  • 消息中间件payload

项目地址

授权方式:免费 + 开源 (Apache 2.0)