当前位置:   article > 正文

走在互联网的大陆上:一、几款流行的JSON库效率分析_nf.json效率

nf.json效率

太久没写博文了,由于最近在搭建自己的开发平台(当然还是选择一些流行的基础框架进行封装),所以对各个技术细节都准备做更深入的研究、论证和学习,主要从学习难易度、开发难易度、运行效率(大数据,较高并发)、技术成熟度、安全、版本升级、后期维护等方面入手。好了,前言就到此吧。

在这个互联网+的时代,更快的速度、更炫酷的用户界面以及更友好的用户体验是用户的期待,也是我们苦逼码农成长的动力。

言归正转,JSON的特性、优越点等内容我及不BB了。我要说的只是几款流行的JSON转换包的对比分析。

先把LibJSON给Pass掉,因为不但用起来不太好用,之前在接触其它几款工具包时感觉还蛮好,后来为什么不用,就补多少了,分JSONArray和JSONObject两个类,初学者和强迫症的人会懵的。而且效率的话相比下面要介绍的三个而言简直弱爆了。

其次接触的就是GSON了,大头公司谷歌支持开发的开源工具包。再后来接触spring MVC 从而就接触了JsckSON,和偶像一个名字哟。最后感觉国产的由电商巨头阿里巴巴开源的FastJSON也蛮好的。

下面是对他们三个的转换和解析耗时进行的记录和对比。

几种流行JSON包耗时记录表(Object转JSON)
数据量/条FastJSON/msGSON/msJsckSON/ms
9781552
99832152
9991317571
9999231187160
99999861889351
999999617473958914
FastJSON Version:1.2.5           
GSON Version:  2.3.1
JsckSON Version:1.9.11
千级数量GSON效率最高;
万级至十万级数量JsckSON 效率最高;
十万级以上FastJSON效率最高;

几种流行JSON包耗时记录表(JSON转Object)
数据量/条FastJSON/msGSON/msJsckSON/ms
938716
99511321
999837963
9999171125200
999996697061613
999999114052131013576
FastJSON Version:1.2.5          
GSON Version:  2.3.1
JsckSON Version:1.9.11
千级数量GSON效率最高;
万级以上FastJSON效率最高;

由于设备问题,百万以上数据量没有进行测试,因为JVM内存一直报溢出。
但是从结果不难看出,三款JSON库都是非常优秀的,各有各的优势和特点,使用起来也很方便。在万以内的转换效率都相差不大,一般人能还真心感觉不出来(单位都是毫秒)。于是乎各位肯定就会想,都差不多,那对比个毛线啊。我也这么觉得的,我就是闲的蛋疼。不过值得注意的是, FastJSON在万级以上的数据量上有独特的优势,但是在少量数据上是输给了其它两款,我在进行测试的时候,JVM内存设置差不多的时候,GSON和JackSON都报内存溢出了,它还能给我返回一个想要的东西是值得赞赏的。 说到这里,也许大家就会乱喷了,我只是想说你自己测试一下就清楚了嘛。
每款都有自己的好,大家结合自己的项目自行定夺吧。我还是把代码分享一下吧。有码有真相哟。
最近准备开始研究JSON /与\这种有转意作用的字符在JSON中怎么进行存储和处理的。
对了,千万级以上数据我都没能测试,但是代码都写好了,请那位土豪帮我测测咧。
源码下载地址:http://download.csdn.net/detail/xudongshengcool/8587137


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/272883
推荐阅读