专业服务器比笔记本还慢?

新到刀片服务器一台,郑重地装到了机房里,总算在公司有点产业了。

周六就放大长假,所以周四忙到半夜,周五早晨接着来,先把组里的文档管理系统从一个破破的笔记本转移到刀片上去。转移完毕,一刷浏览器,每个页面都要延迟两秒才能打开,而过去在笔记本上,文档系统的反应都是迅如疾风啊!专业大刀片和专业机房,怎么比放在邋里邋遢的办公桌上的笔记本还慢啊!!! 😕

文档管理系统是MediaWiki家的,在Apache平台上,使用PHP存取MySQL数据库。

是Apache慢么?由这个Apache管理的其它独立网页都是打开得飞快。
是PHP慢么?把那个独立网页从HTML改成PHP程序输出,还是刷屏快到连闪烁都看不出。
是MySQL慢么?从一个MySQL客户端单独访问,依然是迅雷不及掩耳盗铃。
合在一起之后的MediaWiki,却又是龟速了。

用这台机器的浏览器访问自己,也是同样的现象,这说明网络和防火墙设置不是原因。再说,如果真是网络问题,那么独立网页和MediaWiki就只是“慢”和“更慢”的区别。

后来不知怎的,就留意到MediaWiki本地配置文件LocalSettings.php里的

$wgDBServer = "localhost";

心想,如果把localhost改成绝对的IP地址——127.0.0.1——呢?这么改了一下,MediaWiki就立马变身神行太保了。

难道系统认出localhost就是127.0.0.1,还需要等两秒种?检查一下\windows\system32\drivers\etc\hosts,居然

# 127.0.0.1  localhost

真的被注释掉了!注释的前头还加了一行注释:“兹事体大,着DNS同学办理。”难怪,时间都被DNS耗费掉了! 😯

速度问题解决之后,忽然又想起一个推论:如果MySQL和Apache分装在这台刀片的两个VM上,那么,MySQL服务器的IP地址就会生写在Apache那边(俺们的系统还没复杂到要用DNS来处理),然后,当Apache来访问MySQL时,就会出现“两台机器互动”比“一台机器自己动”还快的诡异现象。 😉

评论关闭