【发布时间】: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