两台服务器,一台apache+php,另外一台mysql,二者间千兆互联。前台页面调用数据库时通过内网卡直接访问mysql的IP进行读取,然后为外网卡进来的请求提供服务。
测试发现网页连接建立以后,到客户端的平均流速只能达到3000字节/秒,平均响应时间非常慢,往往1w多ms,而如果只访问静态页面不访问mysql,就会高很多,大概能到一个正常水平几M字节每秒,平均响应时间下降为1k~2k毫秒,因此猜想是因为调用数据库才导致网页打开很慢。但下面的检查应该从什么地方入手?为什么会导致这种问题呢?请教各位。
我在本地局域网搭建了一个类似的平台,检测结果一样,一旦有涉及mysql调用的页面,页面的传输速度就极大下降,反映时间就会增高到上万毫秒,局域网速率为100M,托管服务器速率为1G。请教为何会这样呢?

解决方案 »

  1.   

    一旦有涉及mysql调用的页面??那就是动态页面了,看看程序有没问题,有死循环之类的错误代码吗? 
      

  2.   

    楼主应该是链接数据库的时间太长了,如果WEB和数据库分开,你需要修改 mysql 的配置文件my.ini,找到[MYSQLD] 下面加一句 skip-name-resolve
     然后重启数据库。
      

  3.   

    内网按理说应该不会如此慢,楼上思路正解,看看mysql的配置文档吧,
    另外检查一下代码