Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 查找Lucee中XSLT性能差的原因_Java_Xml_Xslt_Coldfusion_Lucee - Fatal编程技术网

Java 查找Lucee中XSLT性能差的原因

Java 查找Lucee中XSLT性能差的原因,java,xml,xslt,coldfusion,lucee,Java,Xml,Xslt,Coldfusion,Lucee,我们正在努力寻找XSL转换的原因,这些转换在相当长的一段时间内偶尔会表现得非常糟糕 到目前为止,我们还没有找到真正的原因,因为它可能发生在负载较重的情况下,但也可能发生在服务器基本空闲的情况下。所附示例发生在15分钟内有158个请求时。所以,根本没有提到的负载 我们怀疑转换中使用了一些外部XML文档,但这似乎也不是问题,因为它们通常在几毫秒内加载,有时可能是几秒钟,但无法解释请求花费了200多秒 当我们稍后尝试检查是否存在问题时,相同的转换运行得非常好 我们正在运行Fusion Reactor来

我们正在努力寻找XSL转换的原因,这些转换在相当长的一段时间内偶尔会表现得非常糟糕

到目前为止,我们还没有找到真正的原因,因为它可能发生在负载较重的情况下,但也可能发生在服务器基本空闲的情况下。所附示例发生在15分钟内有158个请求时。所以,根本没有提到的负载

我们怀疑转换中使用了一些外部XML文档,但这似乎也不是问题,因为它们通常在几毫秒内加载,有时可能是几秒钟,但无法解释请求花费了200多秒

当我们稍后尝试检查是否存在问题时,相同的转换运行得非常好

我们正在运行Fusion Reactor来监控我们的服务器,但也没有什么不寻常的地方。在昨天的案例中,既没有高CPU负载,也没有其他异常情况

我附上了一张聚变反应堆剖面仪的截图,在那里你可以看到所花费的时间,如果我们正确解释结果,它似乎总是占据99.x%时间的“扫描记录”部分

有没有办法找出是什么原因造成了这次延误

我们当前运行的版本是:

Ubuntu:14.04.5 LTS Java:1.8.0_45 Lucee:4.5.4.017最终版本


嗯,
SocketInputStream.sockerRead0
中有
99.8%
,所以我要归咎于网络连接太慢


程序的其余部分只是等待字节通过缓慢的网络连接到达,所以你看不到高CPU

Hmm,这听起来像是我们最初的怀疑,但在这段时间内我们看不到任何缓慢的传出请求。我们将squid作为一个代理运行,它记录所有非https请求,并且所讨论的转换没有包含任何我们看不到的https文档。这也可能是Lucee或Java内部的一些内部通信问题吗?@korguell:为什么不对所有需要的XML和XSLT文件的本地副本进行一次实验?@korguell我怀疑传入流的速度很慢,也许您可以运行wireshark或某些UL/DL速度计工具来监视您的网络连接?此类问题通常是由从W3C站点获取已知DTD或模式的请求引起的。W3C故意限制这些请求以阻止这种做法。