Java JSON Library benchmark 测试
今天同事之间的一个讨论,引起了我的好奇,Java JSON libary哪家强?
搜索了一番,看到一篇文章
http://blog.takipi.com/the-ultimate-json-library-json-simple-vs-gson-vs-jackson-vs-json/
它通过分别parse 190M和1KB的json文件来比较json.simple, gson, jackson, jsonp的效率,得到以下结论:
- parse大文件Jackson最好
- parse小文件Gson最好
- Json.simple在两项测试都是输个牛鼻,所以如果大小不一,也是比较平衡的选择
- jsonp似乎让人有点失望了
不过只是比较文件的parse速度,是不是太过简单了?就在该文的评论中有个可能是俄国人强势插入一条广告:我写了一个,还跟各大牛库benchmark了一下!
让我真正感兴趣的是他的测试代码,从Json大小、结构难易程度,读操作,写操作多方面考虑,得出不同的结果。的确在实际应用中这些都是有不同的条件,与其以偏概全,不如动手测试一下某种场景下的所有候选libary的性能更实际。
于是上git hub下载了他的代码 https://github.com/wizzardo/json-benchmarks。 里面有一个坑,build.gradle需要把compile ‘com.wizzardo.tools:tools:0.14-SNAPSHOT’改为compile ‘com.wizzardo.tools:tools:0.14’才能运行。
我的想法还是以后如果需要对不同的library进行选择,都应该把实际会用到的json放到这个项目里跑一次,得到的结果才是更加合理的。
[2]: