`
m635674608
  • 浏览: 5009429 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

各种 Java 的序列化库的性能比较测试结果

 
阅读更多

本次测试专注于 cyclefree 数据结构的编码和解码。一些序列化程序支持循环检测/对象共享,一些序列化程序两种模型都支持,一些序列化程序包括了元数据,一些则没有,有的是跨平台的,有的只支持特定语言,有些是基于文本,有些是二进制。(请查阅 ToolBehavior

其他测试数据会产生不同的结果。不过,这些结果给出了评估这些库的原材料。

java version “1.7.0_51”
Java™ SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot™ 64-Bit Server VM (build 24.51-b03, mixed mode)

简单/通用:

不通过类的具体优化而序列化 POJO 树。序列化类预先已知。循环检测/目标共享检测还没有完成。

检验正确性...

[done]

预热...java-built-in  hessian kryo fast-serialization jboss-serialization jboss-marshalling-river protostuff msgpack-databind json/jackson/databind json/jackson/db-afterburner json/protostuff-runtime json/google-gson/databind json/svenson-databind json/flexjson/databind json/fastjson/databind smile/jackson/databind smile/jackson/db-afterburner bson/jackson/databind xml/xstream+c xml/jackson/databind-aalto

[done]

默认:

序列化任意对象图,循环检测功能。无法预先知道序列化的类。只有支持全目标图形序列的序列化程序包括在内。

检验正确性...

[done]
预热… java-built-in-serializer hessian kryo-serializer fast-serialization-shared jboss-serialization
[done]

简单/具体:

仅用代码序列化特定的类,或者有特殊的类。

检验正确性...

[done]
预热...kryo-opt wobly wobly-compact protobuf protostuff protobuf/protostuff thrift thrift-compact avro json/json-lib-databind json/jsonij-jpath
[done]

手动

仅通过手写序列化代码来序列化具体的类。

检验正确性...
[done]
预热… java-manual kryo-manual protostuff-manual avro-generic json/jackson/manual json/protostuff-manual json/google-gson/manual json/json.simple/manual json/json-smart/manual/tree json/org.json/manual/tree json/argo-manual/tree smile/jackson/manual bson/mongodb xml/woodstox-manual xml/aalto-manual xml/xstream+c-woodstox xml/xstream+c-aalto xml/xstream+c-fastinfo xml/javolution xml/fastinfo-manual
[done]

 

 

http://developer.51cto.com/art/201506/480273.htm

http://www.360doc.com/content/11/1129/09/1542811_168278353.shtml

分享到:
评论

相关推荐

    序列化性能测试JAVA

    总之,Java序列化性能测试是一个复杂的过程,涉及到多个因素和指标。了解不同序列化库的优缺点,并通过精心设计的性能测试来评估它们,可以帮助我们选择在特定项目中最佳的序列化解决方案。在实际应用中,应结合性能...

    Java反序列化终极测试工具

    3. **兼容性测试**:确保反序列化过程在不同版本的Java平台上都能正常工作,以及与各种序列化库(如Apache Commons Lang的SerializationUtils)的兼容性。 4. **性能评估**:测试反序列化操作的性能,包括时间和...

    FST:快速Java序列化的替代品

    **FST:快速Java序列化的替代方案** 在Java开发中,序列化是一个常见的需求,它允许将对象的状态转换为字节流,以便于存储或网络传输。标准的Java序列化虽然方便,但在处理大量数据时,性能往往成为瓶颈。这时,FST...

    序列化测试-java

    Kryo的优点在于它的效率,但缺点是不完全兼容Java序列化,可能导致与其他使用Java序列化的系统不兼容。 **Fastjson** Fastjson是阿里巴巴开源的一个高性能的JSON库,不仅支持JSON与Java对象之间的转换,还提供了...

    Java Json序列化与反序列化

    然而,选择哪个库应该根据项目需求、团队熟悉程度和性能测试结果来决定。 总结,Java中的JSON序列化与反序列化是数据交互的重要环节,Jackson和Gson是两个常用的库,它们提供了丰富的功能和良好的API设计,使得处理...

    Netty服务端与客户端依靠Java序列化传输数据

    综上所述,Netty服务端和客户端利用Java序列化传输数据涉及到Java序列化基础、Netty的ByteBuf、ChannelHandlerContext、自定义编码解码器、安全性和性能优化等多个知识点。在实际应用中,需要结合具体业务需求进行...

    加快Java的文件序列化速度

    综上所述,通过合理优化对象结构、选择高效的序列化库、并行处理、预编译序列化代码以及调整硬件和软件配置,可以显著提升Java文件序列化的速度。实际应用中,需要根据具体场景选择合适的方法,进行性能测试,以找到...

    Bboss和xstream序列化反序列化性能对比1

    在本文中,我们将深入探讨Bboss和Xstream两个序列化和反序列化库在性能方面的差异。这两个库在Java开发中广泛用于将对象转换为XML格式,以便于存储、传输或持久化。以下是对这两个库的详细分析。 首先,Bboss和...

    Java反序列化实战.pdf

    ### Java反序列化实战知识点详解 #### 一、反序列化概述 - **定义**:在计算机科学领域,反序列化是指将字节流或文本流等数据转换回其原始对象结构的过程。这一过程通常与序列化相对应,序列化是将对象的状态转化...

    protobuf/thrift/avro-序列化性能测试工程

    这个名为"protobuf/thrift/avro-序列化性能测试工程"的项目专注于对比这三种技术的性能。 protobuf是Google开发的一种高效的数据序列化协议,它提供了简洁、快速和跨平台的序列化方法。protobuf通过定义.proto文件...

    apache-tomcat-7.0.47-memcached-各种序列化策略-session共享

    2. **Kryo序列化**:Kryo是一个快速、高效的Java序列化库,它允许预注册类以提高性能,并且生成的字节流比Java序列化更小。但是,Kryo不是线程安全的,需要在多线程环境中妥善管理。 3. **FST(Fast-Serialization...

    java笔试题输出结果-java-json-benchmark:JavaJSON库序列化和反序列化的性能测试

    java笔试题输出结果 Java JSON 库的基准测试 目的 该项目使用 . 它涵盖以下库: (来自Oracle) 如果可用,数据绑定和“流”(自定义打包和解包)实现都经过测试。 使用 1、10、100 和 1000 KB 大小的有效负载评估两...

    Java实现几种序列化方式总结

    Java序列化是将对象的状态转换为字节流的过程,以便可以在网络上传输或保存到磁盘上,稍后恢复为原来的对象状态。在Java中,序列化主要通过实现`Serializable`接口来完成。以下是几种常见的Java序列化方式的详细解释...

    Java对象序列化.pdf

    对象序列化是Java标准库的一部分,通过实现`Serializable`接口来实现。这个过程对于持久化对象、跨网络传输对象以及在分布式环境中如Java EE中的Enterprise JavaBeans(EJB)调用都非常有用。 Java EE服务器在处理...

    序列化源码

    1. **序列化库选择**:有许多流行的序列化库可以选择,如Java中的Java Object Notation (JSON)库、Python的pickle模块、C#的BinaryFormatter或DataContractSerializer,以及.Net框架下的Json.NET等。每个库都有其...

    Unity 中使用Protobuf进行序列化和反序列化的Demo

    在Unity游戏引擎中,开发人员经常需要处理数据的序列化和反序列化,以便于存储、传输或网络通信。Protocol Buffers(Protobuf)是一种高效、跨平台的数据序列化协议,由Google开发。本Demo将展示如何在Unity中集成并...

    主流序列化框架测试报告

    主流java语言实现的序列化框架的测试性能测试报告.......................................................................

    消息序列化/反序列化的基准和用法

    例如,`message-master`可能是一个用于测试各种序列化框架性能的项目。它可以比较如protobuf、Apache Avro、JSON和MsgPack等工具的效率。测试通常会包括创建大量消息,然后测量序列化、传输和反序列化的时间,以及...

    jvm-serializers:比较JVM上的序列化库的基准

    3. **序列化性能指标**:在比较这些库时,通常关注以下几个方面: - **速度**:序列化和反序列化所需的时间。 - **大小**:序列化后的字节数,较小的序列化表示能节省存储和传输成本。 - **兼容性**:不同库之间...

Global site tag (gtag.js) - Google Analytics