C++ 序列化性能

2023-12-19

我正在构建一个分布式 C++ 应用程序,该应用程序需要对在不同进程和计算机之间传递的简单数据结构进行大量序列化和反序列化。

我对序列化复杂的类层次结构不感兴趣,但更感兴趣的是发送带有一些简单成员(例如数字、字符串和数据向量)的结构。数据向量通常可以有很多兆字节大。 我担心基于文本/xml 的方法太慢,而且我真的不想自己写这个,因为字符串编码和数字字节序等问题可能会使它比表面上看起来更复杂。

我一直在研究协议缓冲区和 boost.serialize。根据文档,协议缓冲区似乎非常关心性能。 Boost 似乎更轻量级,因为您没有外部语言来指定数据格式,我发现这对于这个特定项目来说非常方便。

所以我的问题归结为:有谁知道对于我上面描述的典型用例来说,升压序列化是否很快?

另外,如果有其他库可能适合于此,我很高兴听到它们。


我强烈建议使用协议缓冲区。它们使用起来非常简单,提供出色的性能,并解决字节序和向后兼容性等问题。为了使其更具吸引力,由于有多种语言实现,序列化数据与语言无关。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C++ 序列化性能 的相关文章

随机推荐