坊间有非常多的 C/C++ JSON 库,怎么选择是一个难题。
nativejson-benchmark应该是史上第一个评测了28个C/C++开源JSON程序库的开源项目,它评测了每个库是否符合 JSON 标准 (RFC7159, ECMA-404),并且在性能上测试了各个操作(如解析、生成)的耗时、内存用量等数据,甚至可执行文件的大小也有统计。
这个项目也希望能够通过互相学习借镜,提升现时或未来的 JSON 程序库品质。
由于每个评测也不能完全覆盖所有数据及软硬件组合,建议使用者可自行在所需的平台和数据下进行测试。
以下是 iMac (Corei5-3330S@2.70GHz) 及clang 6.1_1 64-bit下的部分结果,详情可访问这里。
符合标准程度(越高越好):
解析至DOM的时间(越低越好):
解析至DOM后的内存(越低越好):
https://yqfile.alicdn.com/8bb30e8b0c43a160664dd4f7e5b77ba0251a2181.png
" >
把DOM生成JSON的时间(越低越好):
把DOM生成含换行及缩进的JSON的时间(越低越好):
https://yqfile.alicdn.com/1761a1e7f1ac1b27b9dbf0b7cd7fc41953935176.png
" >
可执行文件(把JSON解析至DOM,然后统计JSON类型)的大小(越低越好):
https://yqfile.alicdn.com/690cba0f980c4a5b591f004d04f5c5146928c2ed.png" >
文章转载自 开源中国社区 [ http://www.oschina.net]