我正在构建一个分布式 C++ 应用程序,该应用程序需要对在不同进程和计算机之间传递的简单数据结构进行大量序列化和反序列化。
我对序列化复杂的类层次结构不感兴趣,但更多的是发送带有一些简单成员(如数字、字符串和数据向量)的结构。数据向量通常可以是许多兆字节。我担心基于 text/xml 的方法太慢了,我真的不想自己写这个,因为字符串编码和数字字节序等问题会使它比表面上看起来更复杂。
我一直在研究协议缓冲区和 boost.serialize。根据文档,协议缓冲区似乎非常关心性能。从某种意义上说,Boost 似乎更轻量级,因为您没有用于指定数据格式的外部语言,我觉得这对于这个特定项目非常方便。
所以我的问题归结为:有人知道对于我上面描述的典型用例,boost 序列化是否很快?
此外,如果还有其他可能适合此的库,我很乐意听到它们。