xslt分组:每个组的“muenchian方法”vs

gpfsuwkq  于 2021-07-13  发布在  Java
关注(0)|答案(1)|浏览(371)

我们的java应用程序使用xsl表将xml转换为“合适的”xml。问题是结果xml大约有20000多行,用java进行转换需要时间(在生产机器上大约30秒)。
这对于业务来说是不可接受的,我正在寻找优化xslt的方法。
目前我使用xslt 2.0分组:

<xsl:for-each-group select="reportContent/transaction" group-by="transactionId">

我们的一位开发人员认为,这是性能缓慢的原因(事实确实如此)。如果我删除分组,我会得到2倍的提升),并建议使用muenchian方法进行分组。
在我开始重写很多代码之前,我想知道是否有其他人也经历过类似的事情,将分组重写为muenchian方法可以提高性能。

2skhul33

2skhul331#

没有内在的理由说明门钦族的分组应该比其他民族更快 <xsl:for-each-group> (事实上,总的来说,人们有理由认为它会慢一点)。但是对于性能,魔鬼总是在细节上,当然,除了在特定的xslt2.0实现的上下文中之外,就这样的性能比较提出问题是毫无意义的。
对于这个任务,30秒听起来很慢,我肯定会怀疑改进是可能的。理想情况下,在开始任何实验性调优之前,您应该深入了解时间的去向:例如,saxon之类的工具 -TP:profile.html 可能是无价的。

相关问题