我在运行OS X Lion的MacBook Pro上本地运行Apache。 直到最近,服务器已经响应良好。 但是,现在看起来反应缓慢。
我在22:17:00请求访问我的机器上的虚拟主机。 Apache直到22:17:10才开始响应。 我检查了我的Apache日志,这是所有的:
127.0.0.1 - - [28/Apr/2012:22:17:10 +0100] "GET / HTTP/1.1" 304 -
似乎没有什么能够阻止它从access_log看到,并且在error_log中没有错误。
这种情况每隔几分钟就会发生一次,间隔正常的速度响应。 最值得注意的是,在最近几分钟内没有build立连接。
有没有人有任何想法,为什么这可能会发生?
使用Chrome开发人员工具(ctrl-shift-I),您可以准确了解浏览器挂在哪个阶段,

另外,你可以在strace下启动httpd来精确的观察它正在等待什么(不知道相应的OS X lion命令是什么…)
# strace -t -T -f /usr/sbin/httpd -X -f /etc/httpd/conf/httpd.conf 23:19:35 execve("/usr/sbin/httpd", ["/usr/sbin/httpd", "-X", "-f", "/etc/httpd/conf/httpd.conf"], [/* 29 vars */]) = 0 <0.000008> brk(0) . . .
显然会有相当多的输出,但是当你的页面挂了10秒,你应该有足够的时间来剪切和粘贴需要10秒的系统调用。
您可能想要检查httpd.conf文件中的HostnameLookups已被禁用;
http://httpd.apache.org/docs/2.1/mod/core.html#hostnamelookups
当设置为“on”时,httpd尝试为每个传入请求执行DNS查找,如果您的本地命名无法正常工作,或者连接不可靠,则速度可能会变慢。
我发现我的问题在这里: https : //stackoverflow.com/a/7553256/1082754