28個C/C++開源JSON程序庫性能及標準符合程度評測
坊間有非常多的 C/C++ JSON 庫,怎么選擇是一個難題。
[nativejson-benchmark](https://github.com/miloyip/nativejson-benchmark)應該是史上***個評測了28個C/C++開源JSON程序庫的開源項目,它評測了每個庫是否符合 JSON 標準 (RFC7159, ECMA-404),并且在性能上測試了各個操作(如解析、生成)的耗時、內存用量等數據,甚至可執行文件的大小也有統計。
這個項目也希望能夠通過互相學習借鏡,提升現時或未來的 JSON 程序庫品質。
由于每個評測也不能完全覆蓋所有數據及軟硬件組合,建議使用者可自行在所需的平臺和數據下進行測試。
以下是 iMac (Corei5-3330S@2.70GHz) 及clang 6.1_1 64-bit下的部分結果,詳情可訪問這里。
符合標準程度(越高越好):
解析至DOM的時間(越低越好):
解析至DOM后的內存(越低越好):
把DOM生成JSON的時間(越低越好):
把DOM生成含換行及縮進的JSON的時間(越低越好):
可執行文件(把JSON解析至DOM,然后統計JSON類型)的大小(越低越好):