2010-07-20 88 views
2

我正在创建一个web服务,它将解析来自不同请求的巨大xml文件。我正在探索不同的xml解析器,从中我阅读了关于XmlBeansDigester的解析器,它们易于使用并且非常高效。我觉得Digester比XmlBeans更容易,但是从XmlBeans的文档中我知道它使用由CERN准备的Saxon 8.6.1,因此它必须比Digester更好。XmlBeans vs Digester擅长处理巨大的XML文件?

那么我应该使用XmlBeans或Digester来处理这种情况?

+0

XmlBeans几乎肯定不适合大型文档,它会立即将所有内容加载到内存中。 – skaffman 2010-07-20 13:10:50

回答

3

那么,如果你有真正巨大的XML文件,比我不推荐其中任何一个。对于高性能的XML处理,还有其他解决方案,甚至是定制解析器,它们的性能至少比您描述的要好一个数量级。为大型XML文件选择什么也取决于你的部分内容:更多的内存或更多的CPU。

E.g. http://vtd-xml.sourceforge.net/可能是一种快速的选择,但也有很多其他的选择,所以如果你的应用程序的性能很关键,那么你真的需要在自己的实际条件下将它们与一些测试进行比较。

+0

非常感谢你这个链接。这个项目的确速度非常快:)。 – 2010-07-28 16:51:40