国外设计欣赏网站 - DOOOOR.com

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,微信登陆

搜索

[Drupal教程] drupal网站优化和加速方法和建议

[复制链接]
发表于 1-27-2012 03:12 | 显示全部楼层 |阅读模式
drupal慢的几个原因总结
1,drupal慢的原因不是drupal的错,而是php的错,使用php加速器如APC,EA至少可以提高3倍的性能./ q: @- C, P8 N) S! E
2,减少数据库通讯次数.尽管减少数据库通信次数似乎对响应时间减少不太明显,可是对一个访问量大的网站应该有帮助吧.
+ N( w% e; v/ T+ A* L" Bphp天生的弱点,使得APC有了用武之地.drupal里面可以通过APC的apc_store和apc_fetch来优化locale和variable模块,经本人修改,最终local和variable模块都不会访问数据库.
0 C4 s) Z' ?+ |$ \5 y) ^如对variable_init的修改
% ^$ A7 J2 B3 A8 d: ifunction variable_init($conf = array()) {
, o1 S+ f$ h) ?// NOTE: caching the variables improves performance by 20% when serving cached pages.
$cached = apc_fetch('cache_variables');
if ($cached ) {; R0 P9 Z- J, E( b* D
$variables = $cached;
0 T% D: J! I/ m, C8 x/ u7 ?) J}
9 L+ j8 `- k6 \. d  `else {
& c) N6 m. ]5 g/ \9 i1 z' ]$result = db_query('SELECT * FROM {variable}');" o3 z7 ]1 b! H( l6 W) [
while ($variable = db_fetch_object($result)) {
$variables[$variable->name] = unserialize($variable->value);
}  {. I% W4 l, |6 a6 \7 Z: \/ u, m
//var_dump($variables);# t' e* w, V1 Q3 d0 r- ]0 X% w& I
apc_store('cache_variables',($variables));
}
foreach ($conf as $name => $value) {
$ ]) O& H, f1 X8 z$variables[$name] = $value;
5 E3 Z1 W: y4 Y, E  R* D}
return $variables;3 R: T/ D; i& {
}# t6 |& X& w: S
使用apc cache来替代数据库可以显著提高访问速度(apc是共享内存访问)
3,通过用devel模块观察,似乎drupal慢的原因并非数据库通信,而是CPU耗时
一些提高速度的建议
1、非技术层次上就是把t函数输入的某些东东,直接更换为要输出的中文内容..
2、应用上能够做到的就是尽管合理的使用模组,不使用华而不实的模组,模块使用太多是很消耗cpu的。
3、在使用中能够做到的就是处理好内容组织:其实,我觉得这一个是很多的人都忽略了的,举例说,很多的人都喜欢把一个网站的所有信息都调用到首页,最近评论,论坛最新主题,活跃主题,最新用户,最新公告,用户排名榜等等,太多太多的信息放置在首页上,可能这样有利于做一个针对于搜索引擎的索引,事实上对用户的访问就吃力了,就算启用了cache机制,但是对第一次访问的用户来说,这简直就是一种折磨..事实上我们可以分开列出一些页面如/recent /recent_comments
& W% m) a; E7 k/active_topic;/we_r_newbie;/user_by_points 等等页面, 或者说重新设计首页,把这些内容综合起来,用户可以根据自己的需要访问不同的页面等等..减少首页的数据库访问负载分担给网站的分页面,让用户对网站的第一印象稍微改善一些..

8 C' N7 A' N" c* y" r9 U

|2011-2026-版权声明|平台(网站)公约|DOOOOR 设计网 ( 吉ICP备2022003869号 )

GMT+8, 6-16-2025 01:46 , Processed in 5.865193 second(s), 83 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表