1

最近我一直在尝试提高我的博客的性能,不仅是一键修复,而且还查看代码以及 CDN、缓存等其他内容。

我与我的主机讨论了安装 memcache 以便我可以在 W3 Total Cache 中启用它,他似乎认为它实际上会阻碍我的网站,因为它会立即最大化我的 RAM 使用量(即 1GB)。

你认为他是准确的,我是否应该尝试一下?我的博客和论坛 (MyBB) 每月的综合浏览量达到 200,000 次。

4

2 回答 2

4

事实上,每月有 200.000 次浏览量,我会从“共享”主机中走出来,购买 VPS 或专用服务器或其他东西,Memcache(d) 确实是一个很好的工具,但还有很多其他方法可以获得更好的性能。

如果您知道如何正确使用 Memcached,它是很好的(w3 总缓存 memcached 的东西,不能胜任这项工作)。

作为一名性能工程师,我经常考虑速度,但也考虑服务器负载和其他东西。我在 wordpress 网站上工作很多,我在服务器上将性能提高到最大的方式是生成我的 wordpress 网站的 HTML 页面,这将导致对 PHP 处理程序本身的 0 或最小访问,从而大大提高了性能.

然后你可以做的是在 web 服务器前面添加另一个缓存代理,等等 Varnish,它会缓存结果,这意味着你也永远不会接触 web 服务器。

它会做的是,当客户端请求您的页面时,它将直接通过内存为已经处理的页面提供服务,这非常快。然后,您的文件上有一个 TTL,并且可以低至 50 秒,这是默认值。50 秒听起来并不多。但是,如果您有 200k 的综合浏览量,这意味着如果您每分钟的综合浏览量相同,那么您每分钟将有 4.5 次综合浏览。所以高峰时间不算。

当您进行 1 次页面查看时,将进行大量处理:

向网络服务器发出第一个请求,启动 php 进程,处理数据,从 DB 中抓取东西,处理数据,处理 PHP 站点等。如果我们可以对几个请求执行此操作,它将加快性能.

通常你也应该能够生成你的论坛的 HTML 文件,如果有对文件的请求,它会每 1-2 分钟更新一次。它将需要处理 1 个请求而不是 4-9 个请求(如果不是更多)。

于 2012-06-11T07:05:08.063 回答
1

您可以限制 memcached 使用的内存量。如果内存已用完,则最旧的条目将被修剪。在 CentOS/Debian 中,您可以使用该标志/etc/default/memcached设置最大内存。-m

以我的经验,64MB 甚至 32MB 的 memcached 内存对于 Wordpress 来说已经足够了,并且会产生巨大的影响。确保不要缓存整个页面(这会很快填满缓存),而是将 memcache 用于Wordpress Object Cache

对于一般性能:确保拥有最新的 PHP 版本(5.3+)并安装了APC。对于数据库查询,我会跳过 W3TC 并直接使用MySQL Query Cache

于 2012-06-10T22:47:03.540 回答