各種 Java 的序列化庫(kù)的性能比較測(cè)試結(jié)果
本次測(cè)試專注于 cyclefree 數(shù)據(jù)結(jié)構(gòu)的編碼和解碼。一些序列化程序支持循環(huán)檢測(cè)/對(duì)象共享,一些序列化程序兩種模型都支持,一些序列化程序包括了元數(shù)據(jù),一些則沒(méi)有,有的是跨平臺(tái)的,有的只支持特定語(yǔ)言,有些是基于文本,有些是二進(jìn)制。(請(qǐng)查閱 ToolBehavior)
其他測(cè)試數(shù)據(jù)會(huì)產(chǎn)生不同的結(jié)果。不過(guò),這些結(jié)果給出了評(píng)估這些庫(kù)的原材料。
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)
簡(jiǎn)單/通用:
不通過(guò)類(lèi)的具體優(yōu)化而序列化 POJO 樹(shù)。序列化類(lèi)預(yù)先已知。循環(huán)檢測(cè)/目標(biāo)共享檢測(cè)還沒(méi)有完成。
檢驗(yàn)正確性...
[done]
預(yù)熱...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]
默認(rèn):
序列化任意對(duì)象圖,循環(huán)檢測(cè)功能。無(wú)法預(yù)先知道序列化的類(lèi)。只有支持全目標(biāo)圖形序列的序列化程序包括在內(nèi)。
檢驗(yàn)正確性...
[done]
預(yù)熱… java-built-in-serializer hessian kryo-serializer fast-serialization-shared jboss-serialization
[done]
簡(jiǎn)單/具體:
僅用代碼序列化特定的類(lèi),或者有特殊的類(lèi)。
檢驗(yàn)正確性...
[done]
預(yù)熱...kryo-opt wobly wobly-compact protobuf protostuff protobuf/protostuff thrift thrift-compact avro json/json-lib-databind json/jsonij-jpath
[done]
手動(dòng):
僅通過(guò)手寫(xiě)序列化代碼來(lái)序列化具體的類(lèi)。
檢驗(yàn)正確性...
[done]
預(yù)熱… 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]
















































