我最近在一个已经非常缓慢地加载页面的现有网站上开始了开发工作。 我知道它是由Apache服务的,但我没有任何访问包含该网站的目录之外的服务器。 我在网站上运行了Google Page Speed和YSlow,但是只有很小的缺陷,对加载时间没有什么影响。 有趣的是,我尝试通过FTP下载一个大文件,然后通过HTTP; FTP传输速率大约是400 KB / s,而HTTP传输速度只有20 KB / s(我在一个可靠的宽带连接上)。 有没有人知道这里发生了什么,甚至更好,如何解决?
谢谢,Brian
你的虚拟主机可能会限制HTTP连接。
说你在一个可靠的宽带连接意味着几乎没有任何问题排除网站\应用程序\networking性能问题。 您和服务器之间是否存在延迟或数据包丢失? 页面是否从多个客户\networking缓慢加载? 我知道你说你没有访问Web服务器,但我会做的第一件事(因为我是一个networking人,而不是一个networking人,所以我不知道什么networking相关的工具使用)将在networking服务器上放置一个数据包捕获程序,为httpstream量启动一个捕获和过滤,并从客户端机器访问该站点。 然后我会查看捕获中的HTTP客户端请求和服务器响应。 如果响应延迟,那么这是一个服务器问题(因为您直接在服务器上运行捕获,响应应该几乎是瞬间的),如果没有延迟,那么这是一个networking问题。
一个有用的开始可能是Firefox的Firebug扩展。 它可以测量等待请求所花费的时间,以及下载页面所花费的时间。
这可能至less表明页面生成速度是否缓慢,或页面大小是否太大。
你有SSH访问的Apache服务器? 如果它在Linux上运行,检查框(CPU,内存)上的资源是否被过度利用。 顶层命令可能在主机上可用。 许多networking主机有几个网站在同一台机器上运行,其中一个或多个网站可能会对系统征税。 如果你有访问netstat,你也可以检查打开的apache线程的数量,看它是否比平时高。 Apache通常被configuration为一次只运行这么多的并发线程。
在托pipe环境中运行应提供某种服务级别协议。 你是否通过支持票来追求这个问题? 你考虑过一个专门的环境吗?
它一直很慢吗? 使用像AlertFox这样的免费网站监控来观看它不会受到伤害。