JSON 性能测试 - WastJson 性能也很快

来源: 投稿
作者: wycst
2024-11-23 09:12:00
AI总结

简介

WAST 是一个高性能 Java 工具集库包,包括 JSON、YAML、CSV、HttpClient、JDBC 和 EL 引擎.

上篇测试了WastEl表达式引擎的性能,本篇测试下Wast下面JSON模块性能,选取当前性能最快的Fastjson2和DslJson针对实体类的序列化和反序列化做下对比测试.

maven 依赖截止当前最新版本

        <dependency>
            <groupId>com.alibaba.fastjson2</groupId>
            <artifactId>fastjson2</artifactId>
            <version>2.0.53</version>
        </dependency>
        <dependency>
            <groupId>com.alibaba.fastjson2</groupId>
            <artifactId>fastjson2-incubator-vector</artifactId>
            <version>2.0.53</version>
        </dependency>
        <dependency>
            <groupId>io.github.wycst</groupId>
            <artifactId>wast</artifactId>
            <version>0.0.18</version>
        </dependency>
        <dependency>
            <groupId>com.dslplatform</groupId>
            <artifactId>dsl-json</artifactId>
            <version>2.0.2</version>
        </dependency>
        <dependency>
            <groupId>org.openjdk.jmh</groupId>
            <artifactId>jmh-core</artifactId>
            <version>1.36</version>
        </dependency>
        <dependency>
            <groupId>org.openjdk.jmh</groupId>
            <artifactId>jmh-generator-annprocess</artifactId>
            <version>1.36</version>
        </dependency>

数据大小 2kb

测试类  https://gitee.com/xiaoch0209/wast-jmh-test/blob/main/src/main/java/com/jmh/test/json/bean/javajsonjmh/JavaJsonJmhDeserTest.java

测试环境 window10 + JDK17 + IDEA2023 

JVM参数 -Xms3g -Xmx3g --add-opens=java.base/java.time=ALL-UNNAMED --add-modules=jdk.incubator.vector

线程数   7

测试结果(每秒运行次数)

Benchmark                                     Mode  Cnt        Score        Error  Units
JavaJsonJmhDeserTest.dsljson_deser_client    thrpt    5   639191.204 ±  49022.629  ops/s
JavaJsonJmhDeserTest.fastjson2_deser_client  thrpt    5   640448.091 ±  11550.536  ops/s
JavaJsonJmhDeserTest.wast_deser_client       thrpt    5  1014195.116 ±  36716.999  ops/s
JavaJsonJmhSerTest.dsljson_ser_client        thrpt    5  1106091.064 ±  49454.761  ops/s
JavaJsonJmhSerTest.fastjson2_ser_client      thrpt    5  1536311.707 ±  33316.424  ops/s
JavaJsonJmhSerTest.wast_ser_client           thrpt    5  1952285.412 ± 113669.838  ops/s

以上仅个人测试结果,从上面数据来看,不论序列化还是反序列化wastjson性能都要领先Fastjson2和DslJson.

另外,WastJson无论是小中大文本各种数据类型等性能都没有明显的短板,除了推广外可以说是六边形战士,更多测试参考 https://gitee.com/xiaoch0209/wast-jmh-test (并非所有的case都能领先于fastjson2,某些场景fastjson2性能也相当出色)

感兴趣的欢迎下载测试,任何场景,不限于博文提到的场景测试.

WastJson 文档地址

查看 WastJson文档

源码地址

展开阅读全文
点击加入讨论🔥(5) 发布并加入讨论🔥
本篇精彩评论
1
早已过了唯性能论的时代
2024-11-25 09:55
3
举报
我只能点赞了吗
2024-11-26 09:24
1
举报
rapidJson挺好的
2024-11-24 12:15
1
举报
5 评论
1 收藏
分享
AI总结
返回顶部
顶部