Hessian的序列化类型与Java内置的有些类似,都是二进制方式。
再次补充了Burlap的测试,Burlap是XML格式的。
我对这三种序列化方式作了一个对比测试:
测试数据
·100次循环
//=========================
1、100次Integer序列化的用时和长度
Java Default 0ms 409
Hessian 0ms 152
Burlap 27ms 1.25K
2、100次"hello world"序列化的用时和长度
Java Default 7ms 513
Hessian 69ms 1.17K
Burlap 57ms 2.73K
3、100次简单对象序列化的用时和长度
Java Default 26ms 1.37K
Hessian 4ms 606
Burlap 422ms 18.6K
·10000次循环
//=========================
1、10000次Integer序列化的用时和长度
Java Default 3ms 39.2K
Hessian 1ms 27.2K
Burlap 2917ms 145K
2、10000次"hello world"序列化的用时和长度
Java Default 231ms 48.8K
Hessian 87ms 117K
Burlap 5530ms 273K
3、10000次简单对象序列化的用时和长度
Java Default 732ms 127K
Hessian 105ms 66.3K
Burlap 41378ms 1874K
结论
Java Default 在数据量不大的情况下性能与Hessian差别不大。
Hessian的优势在对象序列化,劣势在字符串序列化。
但大数据量的处理,Hessian则处于绝对优势,除了字符串的长度大一些。
Burlap... 小数据的时候还可以用用。