【问题标题】:Big wordpress blog causes memory cache to become huge for no good reason大型 wordpress 博客无缘无故导致内存缓存变得巨大
【发布时间】:2011-12-21 11:02:16
【问题描述】:

我试图弄清楚我至少需要多少 RAM/CPU 来托管一个 wordpress 博客,但我偶然发现了一些相当烦人的东西。

我正在使用 wp_super_cache 创建 wordpress 帖子的静态页面,并使用 lighttpd + LUA 脚本将用户立即重定向到 wp_super_cache 生成的页面。这节省了大量的服务器资源。即使使用 500 Mhz CPU 和 128 RAM,我也可以每秒处理约 120 页。

当 wp_super_cache 必须生成一个 html 文件时,唯一真正的负载出现了,因为尚未生成任何文件,或者已更新帖子/添加了评论。所以这大部分发生在添加新帖子时,因为这意味着所有索引页面都需要更新,因为所有帖子都被移动了 1 个位置。现在看看这个。

我不明白为什么 worpdress 会大量移动到缓存中。当然,第一个页面之后的页面需要 3 秒而不是 13 秒来生成,因为缓存只在初始加载时填充,但首先需要 3 秒,那么它为什么将内容加载到缓存中呢?

我想摆脱这种行为的原因是因为我想以 最低限度 托管,并且因为我正在使用 wp_super_cahce + 一个 LUA 脚本来立即重定向到那里,所以这个缓存的东西正在制作服务器(当它的内存为 128 时)非常慢,甚至几乎没有响应,没有充分的理由。这根本没有任何意义,因为我基本上要求生成完全相同的页面。我希望 wordpress 完全忽略有数千个帖子的事实,而只关注被请求的 10 个。

tl;dr 版本:

如何更改 wordpress 代码,使其完全忽略所有帖子,除了在索引页面上请求的帖子,以防止将大量不必要的内容写入内存缓存。

PS:我在这里发布了这个,而不是服务器故障,因为我很确定是 wordpress 的编码导致了这个,而不是服务器软件。

【问题讨论】:

  • 祝你好运改变 wordpress。这并不是世界上最干净的代码......
  • 这就是我寻求帮助的原因之一,我什至无法理解它包含的所有内容等等。

标签: php wordpress caching memory


【解决方案1】:

有很多方法可以让 Wordpress 网站具有可扩展性,事实上 WP 看起来很牛逼。

由于您在博客中有 55000 篇文章,我建议您实现负载平衡器和缓存内容以由不同的服务器提供服务。在这里很难讨论整个事情,因为它很大。查看来自 Envato(Themforest 背后的公司,以及所有 tuts++ 网站)的 Ryan Allen 的视频,其中他描述了他们如何扩展 WP 网站。 http://blainsmith.com/post/3619881611/scaling-wordpress

当您有这么多帖子时,我认为它们很重要。因此,您可能想考虑更昂贵的硬件和缓存服务器、负载平衡器解决方案。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-11-25
    • 1970-01-01
    • 1970-01-01
    • 2021-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多