Json序列化性能測試

jopen 9年前發布 | 16K 次閱讀 JSON開發包 JSON

最近對Java 常見的Json庫,做了一下性能測試和對比,對比的json 庫有:

  • Jackson: 目前使用最廣泛、社區最活躍的json 庫,以性能優異著稱,也是SpringMVC 等各種框架默認使用的json 庫
  • FastJson: Ali 出品的json 庫,從名字上也可以看出來,主打的是“快”
  • Gson: Google 家的json庫,比較輕量,適合Android 使用
  • Json-lib: 這個很早出現的json庫,實現上更符合json語義。目前已經5年沒有更新了,性能也比較差,加入這個性能測試對比主要是用來羞辱還在使用這個庫的Javaer們

測試使用中等的數據量,數據是一個Company,其中包括10個Employee,序列化后的string 約1200個字符。

測試環境:

  • Java 1.8.0_31 64-Bit
  • Jackson 2.5.2
  • FastJson 1.2.5
  • Gson 2.3.1
  • Json-lib 2.1

測試結果如下:

   Bean Serialize  Bean DeSerialize  Collection Serialize  Collection DeSerialize
 Jackson  6031  9347  6670  11057
 Fast Json  6930  5396  8547   9519
 Gson  16854  14046  14049  14922
 Json-Lib  109310  263049  97297  229826

可見:

  • Json-lib 毫無疑問的墊底,與其他的性能差距在一個數量級以上
  • Jackson 和FastJson 相差不多,Jackson的序列化性能好一些,FastJson的反序列化性能好一些
  • Gson 性能相比Jackson 有不小的差距,但還在一個數量級的范圍內

原文鏈接: http://dongliu.net/post/622456

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!