【问题标题】:what could be causing a 60,000 ms delay on server什么可能导致服务器延迟 60,000 毫秒
【发布时间】:2013-06-17 16:47:50
【问题描述】:

我在 Vertrigo 上创建了我的网站,一切都很好,加载速度接近足够的瞬间,但现在我已将其上传到我的服务器,但现在我得到了

Location: United Kingdom
Error/Status Code: 200
Client Port: 3415
Start Offset: 0.784 s
DNS Lookup: 737 ms
Initial Connection: 43 ms
SSL Negotiation: 0 ms
Time to First Byte: 60347 ms
Content Download: 81 ms
Bytes In (downloaded): 7.8 KB
Bytes Out (uploaded): 0.3 KB

当我删除它并上传一个基本的 HTML 文件时,它几乎可以立即输出一些东西......这可能归结为 .htaccess 文件吗?

我有

  RewriteRule    ^Home/([0-9]+)/?$        index.php?page=$1   [NC,L] 

在整个网站的所有页面上,我都进行了速度检查,并从文件中删除了所有内容,如图像、javascript,同样的情况发生了 - 这是服务器还是网站?

【问题讨论】:

  • php 代码是否使用任何外部 API?
  • 尝试使用 die('...') 语句对其进行调试,以确定是哪一行代码导致了这种延迟。我敢打赌前面 index.php 文件的第一行也会有即时响应。
  • 检查脚本...它正在处理一些东西。也许它里面有一个sleep(60),或者调用一个API等等。
  • 它调用 facebook api 来分享按钮/cmets,但我已经从代码中删除了这些 - 我将尝试使用 die()。看看能不能解决什么问题
  • Time to First Byte: 60347 ms 表示这不是客户端问题。删除图像、脚本和其他资源无关紧要。这完全在 php 中。

标签: php jquery performance


【解决方案1】:

Xdebug 有一个性能分析器,可以在函数级别显示执行时间。因此,如果一个函数需要很长时间,XDebug 将准确显示该函数与其他所有函数相比所用的时间。我建议在您的开发环境中安装它,但不要在生产环境中打扰。它还有助于追踪许多其他问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多