Tag Archives: Drupal

Drupal7配置Memcache/Memcached

Memcache module:
https://drupal.org/project/memcache

Documentment:
https://drupal.org/node/1131458

Monitor and Debug:
http://livebookmark.net/journal/2008/05/21/memcachephp-stats-like-apcphp/
https://code.google.com/p/phpmemcacheadmin/

Drupal6 同类型模块:cacherouter

参考资料:http://drupals.cn/node/321
http://blog.timenic.com/install-memcache-on-centos.html
http://www.ccvita.com/257.html
http://blog.csdn.net/heiyeshuwu/archive/2006/11/13/1380838.aspx

Drupal慢的原因

不止一次听人抱怨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

转自:http://drupalchina.cn/node/1860

Drupal Registry Rebuild

最近开发一个项目,在移动过一些模块的路径之后,出现了类似于这样的错误:

PHP Fatal error:  Class 'EntityAPIControllerExportable' not found in ...sites/all/modules/rules/includes/rules.core.inc on line 11

查过资料之后知道,一些比较核心的模块会到registry表内注册自己一些核心的class/function,此时需要重建它,才能让系统找到迁移之后的模块。
重建registry表,我们得使用Registry Rebuild模块。根据官网的介绍:”THIS IS NOT A MODULE. YOU CAN’T ENABLE IT.” 这不是一个真正的模块,不能启用它。说明这个”模块”的使用方式会跟普通的模块不一样,下面开始操作。重建数据之前务必备份数据库!!
Continue reading