wordpress 在本地运行非常慢

安装了wordpress 3.2.1 , 但是在本地运行非常慢,特别是管理画面,一个页面达到了4,5秒, 几乎不可以忍受。

从网上搜索了一下,基本都是加缓存呀,去除plugin之类的。 可我这刚装的wordpress, 有什么plugin呀。

至于缓存,管理画面可不能用什么缓存的。

找啊找,终于找到关于profiling的文章,讲到了把xdebug.profiler_enable打开之后,再用WinCacheGrind去查找瓶颈的。

这里

发觉了,瓶颈在于mysql_connect函数,大概花了一秒时间。 查找的结果是php对ipv6支持不好所出现的问题。 所以,编辑hosts文件,

把ipv6的那段(::1 localhost)给删掉好像能解决。(没认真测试)

 

可是,我的另外一个用codeigniter的项目,也是用localhost做连接的,为什么不出现同样的问题呢?

调查了一下,发觉codeigniter默认用mysql_pconnect函数, 也就是说,php发觉以前连接过的话,直接使用保存的连接,而不会去

尝试重新连接。 所以,除了第一次连接之外,速度可以很快。

 

最终处理:修改wp-db.php, 把使用mysql_connect的地方改成mysql_pconnect, 然后xdebug.profiler_enable重新改回off 。

再访问网站的时候,速度终于可以满足要求了。

 

追加说明:

后来重装wordpress了,结果感觉mysql_connect函数也没慢多少。 估计最主要还是那个ipv6的毛病

posted @ 2012-07-27 15:38  johnsonshu  阅读(2690)  评论(0编辑  收藏  举报