NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

Groovy 2.3 使用快得多的 JSON 解析器

  • 2014-05-05
  • 本文字数:1055 字

    阅读完需:约 3 分钟

Ubiquitous 公司的顾问和创始人 Rick Hightower 透露 Groovy 2.3 将会提供一个最快的 JVM JSON 解析器。在文章 JSON 序列化基准中 Hightower 宣称 Groovy 的 JSON 支持和 Boon JSON 解析器在解析字符串和字符数组的时候比现在的 Jackson 解析器快 3 到 5 倍。

俄国开发者 Andrey Bloschetsov 创建了一个 json 基准 GitHub 项目,目的是对所有流行的 JVM JSON 解析器进行基准测试并比较。该项目对 Jackson Gson Boon Groovy 2.3 的性能做了比较。

为了测试每一个解析器,该项目选择了很多不同结构的数据:

  • Citys——一个简单对象的大数组(有 29470 个条目)。紧凑的 json 表示文件大约有 2.5MB。
  • repos.json——一个包含 4 个复杂结构对象的数组。紧凑的 json 表示文件大约 342.8KB。
  • user.json——包含一个复杂结构的对象。紧凑的 json 表示文件大约 4.2KB。
  • response.json——包含一个简单结构的对象。紧凑的 json 表示文件大约 425B。

序列化功能使用了下面两个变体测试:

  • pojo——对象被表示为 POJO 对象。
  • Maplist——对象被表示为 Map。

反序列化仅使用了一个单独的转换用例进行测试:将 String 转化成 Map。

测试的结果是 Boon 表现最好,Groovy 2.3 次之,Jackson 第三,Gson 表现最差。

为了了解这个结果对 Groovy 意味着什么,InfoQ 采访了 Pivotal 公司的 Groovy 项目经理 Guillaume Laforge

InfoQ**:是什么原因让你决定分支Boon并在Groovy 2.3中使用它?**

我一直在跟随 Rick Hightower 在 Boon 框架上的工作,我对他的 JSON 解析技术所表现出来的速度有非常深刻的印象。因此我联系了他,询问他是否可以将这个解析技术改造到我们已有的、数年之前为 Groovy 开发的 JSON 支持中。Rick 非常友好地提供了帮助,分支 Boon 并让它作为我们 JSON 解析器的基础解析技术。同时他的基准发布的结果也让人印象非常深刻。

InfoQ**:Groovy 2.3中的JSON解析器比之前版本中的解析器快多少?**

很显然,这与你处理的 JSON 负载类型、采用什么标准衡量等方面息息相关,但是根据我从基准收集来的数据看,你可以认为 Groovy 的 JSON 解析(因此 Rick 的 Boon 解析器也是如此)比现在可用的其他 JSON 类库至少要快 3 到 4 倍。

InfoQ**:Grails用户什么时候才能使用Groovy 2.3?**

我们的计划是在一星期左右的时间之内发布 Groovy 2.3,这样打算在 5 月中旬发布的 Grails 2.4 就能集成 Groovy 2.3 了。本周发布的 Grails 2.4 的第二个里程碑实际上已经包含了 Groovy 2.3-beta-2。因此 Grails 用户应该在几周之内就能使用 Groovy 2.3。

查看英文原文 Groovy 2.3 gets a much faster JSON Parser

2014-05-05 02:363574
用户头像

发布了 321 篇内容, 共 116.0 次阅读, 收获喜欢 18 次。

关注

评论

发布
暂无评论
发现更多内容

第三届进博会恒大农牧开馆迎客,旗下进口食品受热捧!

最新动态

学习笔记 --week07

张荣召

第七周学习心得

熊桂平

极客大学架构师训练营

第7周作业

paul

【架构师训练营 1 期】第七周作业

诺乐

【架构师训练营 1 期】第七周学习总结

诺乐

程序员的十年之痒

cxuan

程序员 程序人生

架构师训练营第七周命题作业

一马行千里

极客大学架构师训练营 命题作业

第七周作业

熊桂平

极客大学架构师训练营

链表最快的排序方法、Jupyter Notebook安装、Gremlin入门、python3 请求数据、John 易筋 ARTS 打卡 Week 25

John(易筋)

ARTS 打卡计划 链表快速排序 jupyterNotebook python3 请求数据 gremlin 入门

Reactor:深入理解reactor core

程序那些事

响应式编程 reactor 程序那些事 响应式系统 reactivex

目标检测之ASFF

Dreamer

极客大学 - 架构师训练营 第八周作业

9527

7.4操作系统:计算机如何处理成百上千的并发请求?

张荣召

食堂就餐卡系统设计

mkmonkey

极客大学架构师训练营

性能压测

架构师训练营第七周学习总结

文智

极客大学架构师训练营

7.5锁:锁原语CAS

张荣召

第三周作业-学习总结

jingx

第七周 架构方法学习总结

兵长

架构训练营

7.1性能测试:系统性能的主要技术指标

张荣召

7.2全链路压测的挑战

张荣召

7.3性能优化:系统性能优化的分层思想

张荣召

训练营第三周作业

爱码士

训练营

Spring 自调用事务失效,你是怎么解决的?

程序员小航

Java spring 事务 事务失效 Transactional

体验RxJava和lambda

程序员欣宸

第7周 性能优化(一)作业

蓝黑

极客大学架构师训练营

7.6案例:异步并发分布式编程框架akka

张荣召

架构师训练营第七周作业

文智

极客大学架构师训练营

8张图带你分析Redis与MySQL数据一致性问题

bigsai

MySQL redis 数据一致性

每周学习总结_第一周

mkmonkey

Groovy 2.3使用快得多的JSON解析器_JVM_Matt Raible_InfoQ精选文章