Java中的XML解析器是否比Xalan / Xerces更快
我没有找到很多方法来提高执行密集XML处理的Java应用程序的性能,而不是利用Tarari或Datapower等硬件。 有谁知道任何加速XML解析的开源方法?
看看Stax(流媒体)解析器。 请参阅太阳参考手册 。 其中一个实施是woodstox项目 。
VTD-XML非常快。
它有一个类似DOM的API,甚至还有XPath查询。
由于没有直接提及,我会投入Aalto ,根据一些测量,这是最快的java xml解析器,如:
- JVM序列化器 (比较,XML,JSON,protobuf,Thrift等)
- WSTest的替代序列化方法 (Java Web服务)
这不是阿尔托开发人员编写的。
Piccolo声称速度非常快 。 不能说我自己曾经用过它。 您也可以尝试JDOM 。 与以往一样,以实际负载的代表性数据为基准。
这在一定程度上取决于你想要做什么。 您需要将整个文档拉入内存,还是以流媒体方式操作 ? 不同的方法有不同的权衡,对不同的情况更好。
根据XML消息的复杂性,您可能会发现自定义解析器的速度提高了10倍(但编写的工作量更多)但是,如果性能至关重要,我建议不要使用通用解析器。 (另外我不建议使用XML,因为它不是为性能而设计的,但这是另一个故事,…;)
检查Javolution