外部数据库连接MAMP运行速度极慢

时间:2013-10-04 19:21:24

标签: php mysql codeigniter mamp

我正在处理非常慢的页面加载。我使用Chrome控制台的“网络”标签来获取此信息(但在所有浏览器上都很慢)。

我已经对这个问题进行了大量研究,但现在我完全陷入了困境。我已经尝试Blowski's answer MAMP:重新加载页面非常慢(编辑我的hosts文件),但是没有运气让页面加载更快。

我正在运行OS X 10.8.5,CodeIgniter 2.1.3,并连接到远程MySQL数据库(与实时Web服务器位于同一服务器上)。不确定这与等待这么长时间有什么关系。加载同一页面的速度测试如下:

本地主机
等待时间是13.49秒

enter image description here

Web服务器
等待时间是222毫秒

enter image description here

我该怎么做才能解决这个问题?

更新:我已将问题缩小到MySQL数据库(位于远程服务器上,与安装PHP(MAMP)的地方分开)。是否有任何设置我需要更改以修复这个可怕的加载时间?我也使用IP地址而不是域名连接到数据库,所以我不认为这是安装MySQL服务器的DNS问题。

3 个答案:

答案 0 :(得分:1)

对于一般解决方案,请尝试使用分析器 - 它用于诊断性能问题。

此链接有一个非常好的教程 - http://geek.michaelgrace.org/2011/08/xdebug-cachegrind-and-mamp-on-mac-osx/

您应该检查结果以查看哪些函数执行时间最长。我怀疑您的远程数据库连接可能有问题,但是分析器会给您带来明确的结果。

答案 1 :(得分:0)

如此长的滞后让我怀疑是故事情节的罪魁祸首,特别是因为它只是在本地主机上。

检查你的php.ini是否启用xdebug(可以在单独的xdebug.ini中找到),如果是,则xdebug.profiler_enable设置为true / 1。

那,或者MAMP使用另一个探查器。

答案 2 :(得分:0)

是否可以将运行MySQL守护程序的服务器配置为执行反向DNS查找?由于开发计算机是标准ISP线路上的您自己的计算机,这可能会导致每个请求出现严重延迟,因为反向DNS查找每次都必须超时。