我希望有人能帮我理解一些事情。如果我正在访问一个位于地球另一端的网站,PHP报告了大约300 is的页面执行时间(通过使用microtime(true)进行简单的数学计算)。如果我在本地访问服务器上的同一网站,PHP报告的页面执行时间为20 If。网络延迟似乎是PHP执行时间中的一个因素,这让我感到惊讶,因为我认为整个页面都是由PHP呈现的,并返回给apache立即发送给客户端(因此,脚本执行时间将是相同的,无论其来源如何)。
Apache,PHP5 (mod_php),CentOS 5。
我是否可以假设PHP在某种程度上在等待输出在继续执行之前被发送到浏览器?我有一种感觉,可能有一些输出缓冲因素涉及到这一点,但我真的不确定。我通过php.ini打开了输出缓冲。
我的问题是:正在发生什么,我的网络延迟如何影响PHP的执行?
我希望这是提出这类问题的适当地方。我试着搜索SO & google,但是没有找到任何相关的东西。
编辑我不是说测量网页从服务器到客户端传输所需的时间。我直接谈论的是PHP是如何计算当我从本地机器下载页面的HTML源代码时,它执行得更快。相同的服务器,相同的页面,一致的结果。我在这两个位置都使用curl http://example.com | grep milliseconds来查看服务器报告的PHP执行时间。
发布于 2012-08-26 05:28:20
两台不同的机器,甚至两台完全相同的机器,具有不同的服务器软件或不同的配置,都会对您的执行时间产生严重的影响。任何事情都可能发生。可能会发生阻塞(我以前也遇到过这种情况),突然,页面需要10秒钟的时间加载。在此之后,重新启动浏览器,清空缓存,再试一次,它几乎是瞬间的。
所以,在做了那么多华夫饼之后,我想提到的是,它与连接速度无关,或者至少与连接速度无关。
https://stackoverflow.com/questions/12127792
复制相似问题