写点什么

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

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

关注

评论

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

揭秘Anubis:深度解析FIN7最新Python后门的隐匿技术

qife122

APT攻击 恶意软件分析

中烟创新BI数据大屏:赋能烟草营销智能决策与专卖精准监管

中烟创新

微软安全更新指南新增“安全公告”标签,强化漏洞管理

qife122

微软安全 安全公告

应用案例丨拍张照片,就知道零件多少钱? 从7天到1小时:用视觉AI加速零件成本预测

Altair RapidMiner

人工智能 AI 数据分析 仿真 CAE

从技术架构到经济价值:低代码在企业开发中的成本节约潜力

JeeLowCode低代码平台

低代码 低代码报告 低代码, 低代码排名

当合规成为主旋律,PSP 如何推动链上消费市场迈向新蓝海?

股市老人

跟上节奏!KWDB 核心贡献挑战赛培训再度发车!

KaiwuDB

数据库 直播

AI Compass前沿速览:PixVerse V5、gpt-realtime、Grok Code Fast、HunyuanVideo、OmniHuman-1.5、字节WaverAI视频、MiniCPM 4.5等

汀丶人工智能

PowerShell载荷添加出口暴力破解技术

qife122

PowerShell 端口扫描

图书馆AI推荐新书的开发流程

北京木奇移动技术有限公司

软件外包公司 AI技术应用 AI图书馆

7 款替代 Zapier 的开源工作流工具推荐

NocoBase

GitHub 开源 AI 工作流 Zapier

技术的本质与边界:何时成功何时失败

qife122

人工智能 技术哲学

基于YOLOv8的输电通道隐患检测系统:精准识别气球、风筝、鸟巢与垃圾【含完整训练源码+部署教程】

申公豹

人工智能

CAD提取图形外轮廓的方法

极客天地

怎么用Mermaid代码生成流程图?流程图制作全攻略!

职场工具箱

人工智能 AI 流程图 在线白板 Mermaid

(一)数据模型架构原则:四层七阶,数据湖仓建模的“第一块基石”

白鲸开源

大数据 数据仓库 数据湖 技术分享

从数据到价值:iPaaS如何赋能企业实时决策

谷云科技RestCloud

API 数据传输 集成平台 实时同步 ipaas

什么是ETL?一文讲清ETL全流程!

谷云科技RestCloud

数据处理 数据传输 数据同步 ETL 数据集成

传统大数据 Hadoop 和 云原生湖仓 Databend 对比

Databend

塞讯科技入选 Gartner® AEV 领域代表厂商

塞讯科技

网络安全 信息安全 gartner中国

Windows 7 TCP/IP劫持漏洞深度剖析

qife122

漏洞利用 TCP/IP劫持

零公里二手车的坍塌

脑洞汽车

AI

设备点检 设备维护经验总结(3)

万里无云万里天

工业 设备维护 工厂运维 设备点检

飞算 JavaAI 删除源码任务功能:清爽管理任务队列的实用指南

飞算JavaAI开发助手

Java AI 后端开发 idea intellij

从 “手动建目录” 到 “一键生成”:飞算 JavaAI 拯救企业级后台开发者

飞算JavaAI开发助手

Java 程序员 AI 一键生成

什么是 Active Directory 迁移?

运维有小邓

AD域 AD域管理 AD域迁移

CAD编辑文本的工具栏不显示该如何处理

极客天地

淘宝天猫商品详情API数据解析(附代码)

tbapi

淘宝数据采集 淘宝API 淘宝商品详情API 天猫数据采集 天猫商品详情api

飞算JavaAI行间会话:企业级Java开发代码意图识别的“破局利刃”

飞算JavaAI开发助手

Java 后端开发 企业级开发 代码意图识别 行间会话

系统梳理 RAG 系统的 21 种分块策略

Baihai IDP

程序员 AI rag 检索增强生成 分块策略

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