Memcached 与 APC 我应该选择哪一个?

2021-12-20 00:00:00 caching memcached php apc

我阅读了这篇文章:http://www.mysqlperformanceblog.com/2006/09/27/apc-or-memcached/ 从很久以前开始......我想获得最好的缓存引擎,以便我的应用程序非常快.当然,我不想过度缓存,但我想至少选择最好的东西.在那篇文章中它说 Memcached 很慢而 apc 很快,那么为什么每个人都选择 memcached?>

http://framework.zend.com/manual/en/zend.cache.backends.html#zend.cache.backends.twolevels 这里说的是使用一个快速的(但有限制的)像 Apc、Memcache ......像File,Sqlite……"你觉得用Apc做快,Memcache做慢是个好主意吗?

解决方案

Memcached 是分布式缓存系统,而 APC 是非分布式的——主要是操作码缓存.

如果(且仅当)您的 Web 应用程序必须运行在不同的 Web 服务器上(负载平衡),则必须使用 memcache 进行分布式缓存.如果没有,请坚持使用 APC 及其缓存.

您应该始终使用操作码缓存,即 APC(APC 也会集成到 php6 iirc 中,所以为什么不现在开始使用它).

您可以/应该将两者用于不同的目的.

I read this article: http://www.mysqlperformanceblog.com/2006/09/27/apc-or-memcached/ from way back when.. I want to get the best caching engine available so that my application is really fast. Of course I don't want to over-cache but I want to at least choose the best thing out there. In that article it says Memcached is slow and apc is fast so why is everyone choosing memcached?

http://framework.zend.com/manual/en/zend.cache.backends.html#zend.cache.backends.twolevels here is says "use a fast one (but limited) like Apc, Memcache... and a "slow" one like File, Sqlite..." do you think using Apc as the fast and Memcache as the slow is a good idea?

解决方案

Memcached is a distributed caching system, whereas APC is non-distributed - and mainly an opcode cache.

If (and only if) you have a web application which has to live on different webservers (loadbalancing), you have to use memcache for distributed caching. If not, just stick to APC and its cache.

You should always use an opcode cache, which APC is (also APC will get integrated into php6 iirc, so why not start using it now).

You can/should use both for different purposes.

相关文章