Java 萨克森有快速编译模式吗?
我们通常会进行大量XPath查询,其中几乎没有一个重复。因此,每个查询都会被编译、执行,然后抛出 在Saxon中是否有一种模式我们应该设置为告诉它构建一次性使用的编译查询,在这种模式下使用时会更快 谢谢-戴夫看,没有什么像你描述的那样。最接近的是Java 萨克森有快速编译模式吗?,java,xpath,saxon,Java,Xpath,Saxon,我们通常会进行大量XPath查询,其中几乎没有一个重复。因此,每个查询都会被编译、执行,然后抛出 在Saxon中是否有一种模式我们应该设置为告诉它构建一次性使用的编译查询,在这种模式下使用时会更快 谢谢-戴夫看,没有什么像你描述的那样。最接近的是优化\u级别: 此功能允许在以下情况下抑制优化: 减少编译时间很重要 但我没用过,所以你的里程可能会有所不同。您可以有选择地禁用优化,因此可能需要大量的实验才能找到最佳点。这是一个很好的问题,因为Saxon确实倾向于在优化查询方面投入太多精力,以获得尽可
优化\u级别
:
此功能允许在以下情况下抑制优化:
减少编译时间很重要
但我没用过,所以你的里程可能会有所不同。您可以有选择地禁用优化,因此可能需要大量的实验才能找到最佳点。这是一个很好的问题,因为Saxon确实倾向于在优化查询方面投入太多精力,以获得尽可能快的运行时执行,花费100毫秒编译结果,然后1毫秒执行结果,这种情况并不少见 使用-opt:0关闭所有优化是唯一可用的实际选项。它通常会减少30%的编译时成本(当然这是高度可变的) 在XSLT方面,Saxon EE 9.8引入了模板规则的即时编译,因此,如果您将DocBook这样的大型样式表应用于一个小实例文档,那么我们现在只编译您实际使用的模板规则。在这种情况下,这会产生很大的不同 但是在XPath级别没有等价物
我们一直在调查您的特定用例,我们的初步分析如下:。正如性能方面经常发生的那样,问题在于细节,性能差的问题(及其解决方案)通常非常特定于特定的处理场景。是否有API调用来关闭优化?对于XPath?或者它只是命令行&XQuery?谢谢-daveOptimization级别只能使用setConfigurationProperty()在处理器/配置级别进行控制。