不止一次听人抱怨DRUPAL 慢,在本地开发环境尤为常见,较为常见的原因有:~
本地环境造成慢的原因,最常见的是由update manager 造成的,如果你发现你开的DRUPAL 页面 一直在等待响应,一般都是它造成的,其实根源在于国内网络因为你知我知的原因,访问国外网站常不稳定,而update manager不断在后台检查更新,遇到网络问题的时候就卡住,影响网页本身的加载速度。在模块列表那里禁用update manager 即可。
第二个慢的原因是,toolbar ,就是管理工具条,有时候这个东西的ajax 加载很慢导致网页变慢。在模块列表那里禁用即可。
第三个慢的原因是,php.ini 中的memory_limit 设置太少,一般默认设置大小为32M。当你装很多模块的时候,就会慢,特别是在后台的时候尤为常见(比如区块列表页,模块列表页),且最常见的症状就是白屏。建议这个最少放200M。
说实在的,如果不用PHP 缓存的话,DRUPAL 还是很慢的,不太强的服务器,(用iwebtool 测试)4-6秒的执行时间都可能,但是一般独立服务器或者VPS装了php 缓存 插件,比如apc,xcache 之类都能得到极显著的提升。如果配合fastcgi 就更爽了(一般内存少的VPS 就不要装fastcgi了,国外的共享空间则默认开fastcgi的。笔者的服务器nginx+fastcgi+apc+drupal 自带的缓存,一般的文章页面用iwebtool 测试都不超过0.5秒)。所以自己装的环境还是要装个php 缓存插件,推荐apc,简单高效且DRUPAL 社区有APC 模块可以实现更细的优化。( 一般国外买的共享空间都已经装有相应的php 缓存插件了的)。
在线测量网站执行速度的工具 :http://www.iwebtool.com/speed_test