当前位置:  开发笔记 > 编程语言 > 正文

扩展Drupal

如何解决《扩展Drupal》经验,为你挑选了2个好方法。

我正在基于Drupal的网站上工作,并注意到有很多单独的CSS和js文件.虽然涉及到一些代码,但我也可以看到很多使用了很多查询的情况.

您尝试了哪些技术来提高Drupal的性能以及您使用哪些模块(如果有的话)来提高Drupal的"开箱即用"性能?



1> Eaton..:

转到admin/settings/performance页面,打开CSS和JS聚合,以及最短1分钟的页面缓存,可以立即提升高流量站点的速度.如果您正在编写自己的代码并进行任何查询,请考虑为昂贵的函数编写自己的离散缓存.链接的文章涵盖了Drupal 5,而不是6,但d6中唯一的变化是序列化要求的消除以及cache_set()和cache_get()函数的函数签名.(两者都在对该文章的评论中指出)

在大型站点上还考虑将memcached服务器放到网络上:使用memcached模块,您可以完全绕过drupal数据库以获取缓存数据.如果您有大量内容并且搜索是热点,您还可以考虑使用lucene/solr作为搜索索引器而不是drupal的内置搜索索引器.这对于内置索引器来说很不错,但它并不是为重负载而设计的(例如,每小时有数百或数千个新内容,需要进行大量的分段搜索).在Apache Solr实现模块可以与配合英寸

如果您正在大量使用视图,请确保已检查为未编制索引的字段生成的查询; 特别是CCK字段的排序和过滤可能很慢,因为CCK不会自动添加主键之外的索引.在D6中,在管理界面中预览视图,复制查询文本,并通过mysql中的EXPLAIN或您拥有的任何查询分析工具运行它.

像YSlow和Firebug这样的工具也可以帮助你发现缓慢的东西,比如大量的图像文件,托管在远程服务器上的JS等等.



2> smokris..:

Drupal 6,开箱即用,提供css和javascript聚合---大多数css和js文件将合并为一个文件(因而是单个HTTP请求),并且还缩短了空白(以减少带宽)消费).您可以在/ admin/settings/performance下启用此功能.

此屏幕上还有Drupal(非常有效)缓存的控件,这有助于减少数据库查询的数量.

此外,由于Drupal(以及您可能安装的所有模块)都有大量的PHP源代码,因此使用APC等PHP操作码缓存有助于显着缩短请求时间.

推荐阅读
惬听风吟jyy_802
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有