我正在玩 ProtoBuf,试图了解期望什么样的压缩。作为一个测试用例,我有一个包含 10,000,000 个十个字符串的列表,我正在对其进行序列化,然后将其拆分为 3.9mb 的块。ProtoBuf 似乎在这方面做得很糟糕,最终创建了 30 多个块。这是我运行的测试的结果。
ProtoBuf-Net 序列化:30 个 3.9mb 块
BinaryFormatter 序列化:12 个 3.9mb 块
BinaryFormatter w/Deflate 流序列化:1 72kb 块
我这样称呼 ProtoBuf:
ProtoBuf.Serializer.Serialize<List<string>>(names);
任何帮助表示赞赏。