跳到主要内容
版本:1.7

Scala JSON 基准测试报告

本测试使用同一个不可变 Scala MediaContent 模型和 Eishay JSON 文档,对比 fory-json-scala、jsoniter-scala 和 Jackson Scala。String 组不包含 UTF-8 转换;UTF-8 组中各库均使用直接操作字节数组的 API。

独立的 Google Maps 工作负载见 JVM JSON 格式化输出测量。

  • 测试日期:2026-08-14
  • 源码提交:588ad6ab355c4c23fa0a2e4f269a8c733cba7b01
  • 平台:macOS-15.7.2-arm64-arm-64bit (arm64)
  • JDK:26.0.1
  • 虚拟机:OpenJDK 64-Bit Server VM
  • JMH:1.37
  • 预热:2 轮,每轮 1 s
  • 测量:2 轮,每轮 1 s
  • Fork 数:1;线程数:1
  • 聚合方式:3 次交替短运行的中位数;误差线表示各次运行之间的最大偏差
  • 模式:吞吐量,越高越好

String​

Scala JSON String 基准测试吞吐量

UTF-8 字节​

Scala JSON UTF-8 字节基准测试吞吐量

结果​

表示形式操作fory-json-scala 次/秒jsoniter-scala 次/秒Jackson Scala 次/秒最快
字符串序列化6,760,5882,748,9971,955,855fory-json-scala
字符串反序列化3,771,2802,350,297960,362fory-json-scala
UTF-8 字节序列化9,485,1222,745,5671,761,719fory-json-scala
UTF-8 字节反序列化3,318,8932,391,9231,080,453fory-json-scala

Fory 性能优势​

表示形式操作相对 jsoniter-scala相对 Jackson Scala
字符串序列化145.9%245.7%
字符串反序列化60.5%292.7%
UTF-8 字节序列化245.5%438.4%
UTF-8 字节反序列化38.8%207.2%