写点什么

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:363982
用户头像

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

关注

评论

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

Dubbo 服务启动检查

青年IT男

dubbo

Redis 持久化

叶佳欣

redis持久化

产品文档和原型怎么弄?——课堂笔记

Deborah

ConcurrentHashMap 源码分析

大海

ConcurrentHashMap

Dubbo 服务配置

青年IT男

dubbo

把黄金圣衣交给圣斗士:HDC.Cloud 2021的硬核春天

脑极体

如何运用“区块链”,让档案数据管理更安全

CECBC

数据安全

Spring 实战:通过 BeanPostProcessor 动态注入 ID 生成器

看山

Spring实战

HashMap 源码分析

大海

Java HashMap底层原理

Dubbo 直连提供者

青年IT男

dubbo

postman的url编码问题

箭上有毒

4月日更

前端架构演进 - 从单体到微前端(理论篇)

Teobler

大前端 架构演进

产品经理训练营学习总结

新盛

Spring优缺点

风翱

spring 4月日更

2.7w字!Java基础面试题/知识点总结!(2021 最新版)

JavaGuide

Java 面试

一念三年,心机流转|靠谱点评

无量靠谱

区块链电子发票的多维创新与变革效应

CECBC

电子税务

Dubbo 集群容错

青年IT男

dubbo

聪明人的训练(二十五)

Changing Lin

4月日更

截图软件Snipaste超好用的贴图功能,在别的软件也能拥有 | 窗口置顶工具

彭宏豪95

效率 工具 windows 4月日更 窗口置顶

稻盛和夫的管理绝活:阿米巴经营模式

石云升

团队建设 28天写作 职场经验 管理经验 4月日更

区块链链接能源:到底是乌托邦愿景还是未来蓝图?

CECBC

能源

“拼多多”值得我们学习

小天同学

思考 拼多多 自我感悟 4月日更

网络协议学习笔记 Day4

穿过生命散发芬芳

网络协议 4月日更

MySQL事务机制是如何实现的?

冰河

MySQL 事务 Binlog Redo Log Undo Log

小白也能看懂的操作系统之内存

程序猿阿星

操作系统 内存 内存管理 内存优化

KubeFed集群联邦

ilinux

Kubernetes 容器 云原生 kubernetes联邦

源中瑞区块链BaaS平台搭建,为企业开发应用提供技术支撑

源中瑞-龙先生

区块链 源中瑞 Baas

Golang 常见架构模式

escray

学习 极客时间 Go 语言 4月日更

话题讨论|华为云再报大动作,云厂商未来战场在哪里?

程序员架构进阶

话题讨论 28天写作 4月日更

2021团体程序设计天梯赛总结

玄兴梦影

算法 总结 比赛

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