关于加速Drupal站点的提示

时间:2009-04-02 21:29:45

标签: performance drupal

我们刚刚实施了一个drupal网站。该网站的性能似乎是一个问题。 我们启用了drupal缓存,设置了apache缓存派生。 重复的页面访问速度足够快(coz CSS和JS被缓存),但初始页面访问仍然是一个问题。

Drupal专家,您能否提供一些关于加速drupal站点的不同技术的指示。 (比如DO和DONOT)。 还有其他低悬的水果吗?

(顺便说一下,DB在这里不是问题。那个层足够快。问题似乎在PHP / Drupal层中)

8 个答案:

答案 0 :(得分:5)

您是否使用过YSlow或Firebug等工具来确定页面加载的哪些部分实际占用的时间最多?另外,请考虑使用Devel模块的查询监视来确定运行查询与执行PHP代码所花费的时间。

正如其他人所说,像APC这样的操作码缓存会产生巨大的影响。但是,第二次访问网站的速度更快,这暗示了辅助文件(图像,JS,调用远程站点的外部JS等)的问题。

答案 1 :(得分:4)

你提到CSS / JS很慢 - 你是否在/ admin / settings / performance中启用了CSS和JS的'带宽优化'?它将所有CSS(或JS)捆绑到一个文件中 - 如果您有大量单独的文件(延迟是杀手),这可能会产生相当大的差异。

使用像APC这样的操作码缓存也会对页面性能产生很大影响,特别是一旦开始堆积模块。我无法想象在不使用它的情况下重新开发PHP。

答案 2 :(得分:3)

我写了一篇关于page loading performance in Drupal的文章。你会在那里找到关于那个主题你需要了解的几乎所有内容的参考资料。 正如其他人已经指出的那样,你肯定应该安装一个操作码缓存,例如eAccelerator或APC。它们易于设置并为您提供免费的性能提升!

答案 3 :(得分:3)

您的网站是否有网址?

快速指点:

  1. 使用YSlow
  2. 使用tools.pingdom.com查看是否有任何明显缓慢的内容
  3. 使用YUI压缩器压缩js和css
  4. 仅在必要时使用Cookie
  5. 使用APC / Xcache
  6. 调整PHP params
  7. 将单独的服务器用于静态。使用nginx
  8. 使用varnish缓存
  9. HTH。

答案 4 :(得分:1)

我找到了一些方法来加速Drupal。我使用Godaddy比一个已经很慢的系统慢,但它帮助我发现了一些问题。另外,我使用的是Commerce Kickstart,它甚至比Drupal 7慢。

Drupal有点慢,所以尽可能快地制作这些东西是必要的。

  1. 您需要快速的数据库连接(没有慢速网络数据库连接)。

  2. 您可以在php.ini / .user.ini中修改一些配置设置。 (见下面的链接)

  3. 如果Drupal在托管公司托管,您需要选择最快响应时间的托管公司。(参见下面的链接)

  4. 启用Drupal缓存。

  5. 不要启用超过50个模块。

  6. 如果您使用MySQL,也可以使用MySQL进行查询缓存。

  7. 之后,很多与性能有关的都是程序化的。看看Drupal 7如何分解Profile实体,如果你想看到另一个随着扩展意义而增长的数据库问题,Drupal 7可能无法扩展。您可能必须自己编写模块以加速核心速度已经很慢的部分。也许Drupal 8会处理一些问题。

答案 5 :(得分:0)

如果您确定数据库不是瓶颈,那么它指向执行时间或服务器响应。

你在进行任何类型的PHP操作码缓存吗?

同时检查您的Apache配置。它是仅在并发使用情况下缓慢执行还是只用一个访问者来减慢速度?

Drupal上还有一个页面,它涉及一些常见步骤:Server tuning considerations

当然,你可以忽略与数据库相关的那些。

答案 6 :(得分:0)

我最近推出了一个Drupal网站,运行速度非常快。最大的瓶颈(根据Y!Slow)是我们添加的ShareThis应用程序。此外,Google Analytics的外部下载会增加一些时间。

此外,请确保关闭所有开发人员模块(他们可以添加jscript和样式开销),在测试时未以管理员身份登录,并使用具有最少附加组件的浏览器(例如Chrome) )可能正在进行处理。

答案 7 :(得分:0)

尝试安装apc - http://il.php.net/apc或eccelerator - http://eaccelerator.net/

两者都改善了PHP的运行性能。在我测试的一些网站上,加载首页所需的时间从大约750毫秒到大约300毫秒。

我在Windows上使用PHP / MySQL / Drupal经验不佳,发现LAMP哑弹有时更容易。所以我建议 - 远离基于Windows的设置。

不是真正的stackoverflow.com回答......但是syster站点还没有:)