在drupal性能优化方面,比较重要的几点在前文《漫谈Drupal性能优化经验贴》中已经做了介绍,不过性能优化方面,我们还有很多需要注意,本文就几个drupal性能相关模块做一些简要介绍。- K6 c* T1 T6 F2 ]( k$ d4 A! h
& ]9 B) l, p6 s G0 C; L' p
DB Maintenance 模块
' I) X" ?9 Y% O. [% O# NDB Maintenance 模块可以帮助我们对数据库的性能做定时的优化和修复,主要是执行一些优化SQL语句,比如OPTIMIZE TABLE、REPAIR TABLE等。
) w5 T6 U0 I, j3 l S" z
1 h5 `* S M! q$ ]- i, E: OBlock Cache Alter 模块8 K* z! d; [% C4 l* Z# p
Drupal提供默认的Block缓存,但是是在code级别的,Block Cache Alter可以帮助我们设置每一个block的缓存情况。# B$ \" m/ G s* y' h
注意:要使用这个模块,Drupal6需要打patch。) |" U4 R/ v. R
% Y1 ^1 _+ c; c( g p0 K" _ c5 NElysia Cron 模块
3 [1 v4 j E4 ]0 T% GDrupal默认的cron会运行所有的cron job,这样有可能需要花费很长时间并且在运行cron的时候对服务器带来很大的负载,elysia_cron 扩展了Drupal默认的cron功能,提供了相当多的新特性,从而大大改善了默认的Drupal cron的性能,值得一用。
+ ?4 P% J4 P- f k# L+ l3 [) T注意:对于cron job,笔者推荐使用CI工具,比如Jenkins。. b4 E1 f8 u- x5 I
* Z% i/ u/ [0 V. W* oNo Anonymous Sessions 模块3 O& d8 y7 x# U- p7 |0 U1 A
禁用Drupal的session,可以对匿名访问较大的网站带来很大的提升。具体可以参考 reducing server load by eliminating anonymous sessions for Drupal 6.x。 模块官方网站:No Anonymous Session模块。
7 h3 b4 H7 p) f- I" ^* U' ?* K, |- h4 O! p3 i v( ~8 e
CDN 模块
8 X/ J) W8 i) PCDN,大家都不陌生,大型网站性能优化必备。Drupal的CDN模块使用也比较简单,并提供了push和pull模块,具体使用请参考Drupal CDN模块的官方地址。模块官方地址:CDN模块。
6 v$ ^8 Q2 A5 I+ g S9 P% P$ i7 V
- p% L5 A# e* c0 K& Y8 `7 IURL 重写模块$ n8 A% \' k+ S' N
我们都知道Drupal里面的URL重写是基于URL别名的,URL别名需要写入数据库,如果名为提供了类似其他系统里基于正则、自定义函数等方式重写URL的话,管理URL和性能方面都会有较大的提升。5 b9 d. Y$ }4 a! A. c# r
模块,Rewrite Sub Link 主要功能是自动重写子URL,比如node/1的url是 name-a,那么 node/1/info则自动重写为 name-a/info。此外该模块还提供了强大的正则、自定函数等功能,完全可以实现任何URL重写。
Q( Y/ W0 f; c1 r9 s$ l; _: I" l8 p5 c* F X3 _
此外,我们需要注意一下模块的使用。0 e: C# O4 t+ a; s+ j- k i
& {4 W0 t! z+ U9 t禁用 Database Logging 模块/ M; C5 i$ I6 L# P. o2 @* x$ h$ k
Database Logging 模块会让Drupal的页面变得比较慢,因此对于生成服务器上,最好关闭Database Logging模块。
' H% j x5 j4 [" {0 t9 w1 L3 C7 e4 n( A- M6 D8 r3 f
谨慎使用 Content Profile 模块
6 k* x8 @( M& T+ r8 G/ n/ E在文章让猪去飞-漫谈Drupal性能优化经验贴中提及了这个模块,在此处再次说起,因为大型站点,这个模块会带来很大的性能问题,所以笔者强烈推荐不要使用这个模块。- F7 a+ x1 {& _3 p2 @
! Q# ~) d( K) ? ^) c: ]3 H: I
关掉 Devel 模块, a# g" H: g3 h0 k; h* w, _; z
对于生产服务器,记得一定要关闭Devel模块,虽然Devel模块在分析性能、慢查询、调试等方面非常易用,但是在生产服务器,务必要关闭Devel模块,否则会带来很大的性能问题。/ F. ?* M/ W* Z- H. N
' v5 Z I4 t3 Q7 E# C7 X
其他相关的Drupal性能相关的模块会陆续介绍,相关参考文章:. [ {! `# J; B- e5 F
# k) T# Q+ l3 z& I7 a1 q9 s
Drupal性能优化实战4则
$ q" ^' h( P: e t2 N# y让猪去飞-漫谈Drupal性能优化经验贴
" M+ V: n3 k( ^' U% Y% x声明: 本站所有文章欢迎转载,所有文章未说明,均属于原创,转载均请注明出处。
. A9 C+ ^5 s& t7 A7 E3 d本文有效链接: http://www.drupal001.com/2012/02/drupal-performance-modules/
' Q1 ?2 a" B; Q4 k版权所有: Drupal与高性能网站架构 http://www.drupal001.com
9 ~, z& }; k+ V; H8 d$ h) d/ N |
|