Ubuntu的网站突然运行缓慢

我pipe理的网站今天突然开始运行。 我试图找出瓶颈在哪里。 我创build了一个14kb的文本文件,这需要5秒钟在浏览器中打开! 我相信问题不在于我的互联网连接 – 例如,我可以看YouTube。

如果我访问lan上的14kb文件,那么页面需要6ms才能打开。 这让我觉得这个问题不是apache。

但是,网站也使用mysql,当我打开一个显示数据在一个表中的页面需要的时间 – 如10分钟或更多。 在LAN上,这个直接打开。 我检查完整的进程列表,而页面正在通过互联网加载,并有很长的时间查询:

mysql> show full processlist; +------+------+-----------+------+---------+------+-------+-----------------------+ | Id | User | Host | db | Command | Time | State | Info | +------+------+-----------+------+---------+------+-------+-----------------------+ | xxxx | root | localhost | fms | Sleep | 307 | | NULL | | yyyy | root | localhost | NULL | Query | 0 | NULL | show full processlist | +------+------+-----------+------+---------+------+-------+-----------------------+ 2 rows in set (0.00 sec) 

任何人都可以帮助我诊断这个问题? 我有完整的root权限访问运行Web服务器的Ubuntu机器。 该网站是从Apache和PHP生成的。

更多信息

我已经回家了,回来工作。 奇怪的是,该网站从我的家庭工作正常! 所以这里是目前的状态:

  • 在家里:工作正常
  • 在LAN2上工作(不同的局域网到服务器):悲惨地慢
  • 在LAN1(与服务器相同的LAN)工作:工作正常

问题可能出在工作上的dns上。 也许ispcaching或筛选请求?

跟踪路由引导

  • 工作lan1当然只有一跳
  • 在工作lan2上,traceroute使用icmp回声(ping)没有在60跳完成(条目9到60都是* * *),但使用tcp syn数据包的traceroute在12跳完成
  • 从我家的traceroute也没有通过使用icmp回声,但它完成了9跳使用TCP SYN包。

看来问题完全局限于lan2 – 这表明有一些configuration问题(例如一个坏的dns条目已经被caching到这个网站,否则可能是一些路由,陷入循环),否则某些硬件已经死亡。 所有关于debugging这个问题的build议都是可以的

来自wireshark的进一步信息

我注意到这些页面连接起来相对较快,但需要很长时间才能完成加载。 我也打开网页时运行wireshark,发现了很多(数百)以下数据包:

 source dest protocol info website work pc on lan2 TCP [TCP Retransmission] [TCP segment of a reassembled PDU] work pc on lan2 website TCP 62783 > https [ACK] Seq=667 Ack=26435 Win=260 Len=0 website work pc on lan2 TCP [TCP Previous segment not captured] [TCP segment of a reassembled PDU] work pc on lan2 website TCP [TCP Dup ACK 192#1] 62783 > https [ACK] Seq=667 Ack=26435 Win=260 Len=0 SLE=xxxxx SRE=xxxxx website work pc on lan2 TCP [TCP segment of a reassembled PDU] 

我想知道如果问题是在SSL2caching在LAN2上的SSL证书? 真的抓住了现在的秸秆…我要谷歌从wireshark信息的一些条款,也许这将导致某处。

由于没有在LAN2上完成traceroute,可能是硬件故障。 检查电缆故障,维修灯闪烁的路由器/交换机,更换它们。

我发现了一台windows电脑,它在工作中被插入到两个车厢中。 用户主要访问问题中讨论的网站,所以我拔掉了这个电脑从lan2,以便它可以直接与lan1网站沟通。 一旦我做到了这一点,在lan2工作的所有其他电脑开始工作正常的网站 – 连接和加载现在回到了平常的快速。 我的猜测是,这台电脑是路由一半的网站数据包,而其余的通过互联网,也许他们没有被重新装回浏览器。

我真的不知道如果是这样的话,但我相信这个问题是固定的,当我断开这台电脑从lan2。

显然,根据我发布的信息,没有办法猜到答案,但是要感谢所有提供build议的人。