WEB开发网
开发学院软件开发Java Java 中的 XML: 数据绑定,第 2 部分:性能 阅读

Java 中的 XML: 数据绑定,第 2 部分:性能

 2010-04-01 00:00:00 来源:WEB开发网   
核心提示: 图 5. 大文档的内存使用情况查看原图(大图)图 6. 小文档的内存使用情况查看原图(大图)这里的差异比时间性能比较中的差异更大,并且表现出了一个非常不同的模式,Java 中的 XML: 数据绑定,第 2 部分:性能(7),尽管 dom4j 在时间测量中执行的很好,但是在内存使用方面,它的确还有

图 5. 大文档的内存使用情况
Java 中的 XML: 数据绑定,第 2 部分:性能

查看原图(大图)

图 6. 小文档的内存使用情况
Java 中的 XML: 数据绑定,第 2 部分:性能

查看原图(大图)

这里的差异比时间性能比较中的差异更大,并且表现出了一个非常不同的模式。尽管 dom4j 在时间测量中执行的很好,但是在内存使用方面,它比任何数据绑定框架(除了 JBind,它构建在与 dom4j 的表示相当的内部文档模型上)差远了。与该领域中最优秀的执行者相比,表示相同的数据,dom4j 所占用的内存是前者的 10 倍。

两种映射绑定方法为绑定数据使用了同一种内部结构,所以它们表现出了相同的内存使用情况。这让它们在内存效率的“竞技场”上并列第一,从而产生了比使用生成代码的数据绑定方法优越几倍的性能。部分原因是因为 映射绑定使用了数据值的紧凑表示。在这些测试中,映射绑定将大多数数据值转换成 int 值(在大多数 Java 虚拟机(Java Virtual Machine,JVM)中, String 即使只包含一个或两个字符,都将占用 20 个以上的字节,而 int 只占用 4 个字节)。该转换的开销增加了读写次数,但是除了只是内存大小减小了以外,它的确还有其它优点。当实际使用数据时, int 远比 String 更便利和有效。

上一页  2 3 4 5 6 7 8 9 10  下一页

Tags:Java XML 数据

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接