Php echo <script>标签导致重要的性能延迟

时间:2015-04-24 21:43:11

标签: php html tags echo

我正在使用apache 2.2和php 5.3在我的windows 2008服务器上进行测试,使用Jmeter在10秒内测试300次点击。&#xA;我很惊讶,当时有一个非常简单的脚本有一个巨大的延迟

&#xA;&#xA;
  echo'&#xA;&lt; script language =“JavaScript”src =“xx.js”type =“text / javascript”&gt;&lt; / script&gt; &#xA;&lt; script language =“JavaScript”ssrc =“xx.js”type =“text / javascript”&gt;&lt; / script&gt;&#xA;&lt; script language =“JavaScript”src =“xx。 js“type =”text / javascript“&gt;&lt; / script&gt;&#xA;&lt; script language =”JavaScript“src =”xx.js“type =”text / javascript“&gt;&lt; / script&gt;' ;&#xA;  
&#xA;&#xA;

在测试之后,我更改了“script1”或其他任何内容的脚本标记(甚至其他有效标记,如链接)< / p>&#xA;&#xA;

  echo'&lt; script1 language =“JavaScript”src =“xx.js”type =“text / javascript”&gt;&lt; / script&gt;&# XA; &lt; script1 language =“JavaScript”ssrc =“xx.js”type =“text / javascript”&gt;&lt; / script&gt;&#xA; &lt; script1 language =“JavaScript”src =“xx.js”type =“text / javascript”&gt;&lt; / script&gt;&#xA; &lt; script1 language =“JavaScript”src =“xx.js”type =“text / javascript”&gt;&lt; / script&gt;';&#xA;  
&#xA;&#xA ;

并且脚本按照假设快速运行

&#xA;&#xA;

这里是jMeter的结果。我仍然不知道是什么原因或如何改进它

&#xA;&#xA;

案例1正确使用标签,300个样本&#xA;平均3218毫秒&#xA;每分钟样本:1262

&#xA;&#xA;

案例2使用标签,300个样本&#xA;平均116ms&#xA;每分钟样本:1783

&#xA;&#xA; <编辑:&#xA;在我的jmeter测试中我只是下载并请求单个php而不是静态文件,Jmeter没有理由尝试解析/下载jsvascript文件,它应该发送请求和保存响应,没有别的。

&#xA;&#xA;

如果是这种情况,jmeter会下载所有包含的文件.ico,.css,图像等,并且有一个重要的延迟,但只有发生在脚本标记上,好像是php或apache正在制作,当他们在字符串上找到它时需要额外的处理。我尝试使用双引号和单引号以及heredoc来格式化包含脚本标记的字符串但是相同。

&#xA;&#xA;

现在我使用apache 2.4和PHP5在wamp上运行测试。 4,问题解决了,jmeter同时解决了两个脚本。显然它与php或apache有关,可能是一个模块或扩展,它在回显之前解析de buffer但仍然不知道是哪一个导致了这个

&#xA;

1 个答案:

答案 0 :(得分:2)

使用script标记时,jMeter会下载xx.js。这需要一些时间。使用script1时,jMeter会看到错误的标记,并忽略它(或执行未指定的操作)。在任何情况下,在这种情况下都不会下载xx.js,因此需要的时间更少。