CakePHP中的文件或APC缓存引擎?

时间:2011-08-05 15:06:49

标签: php caching cakephp apc

CakePHP除了提供默认的缓存引擎外,还支持APC,XCache和Memcache。我的应用程序遇到了一些问题,偶尔会出于某种原因缓存损坏的页面,我决定尝试使用另一个引擎来查看是否会产生影响。

XCache和Memcache似乎都可能需要更多的设置,但APC似乎确实是在core.php中更改一行的情况。我的问题是,在哪里可以找到关于为什么的信息我应该选择APC而不是默认引擎?优缺点都有什么?它实际上不是“只是尝试它们两个并看看是否感觉比另一个更好”(可以吗?),但基本的窥探并未揭示出缓存引擎的不同优点的简单细分。饼。

任何人都可以向我解释Cake中缓存引擎的神秘工作原理吗?或者指向一个资源吗?如果还比较了XCache和Memcache的奖励积分,因为它们可能是我的下一个停靠点......

1 个答案:

答案 0 :(得分:5)

文件在磁盘上:

  • 不太快;如果多个进程同时尝试读/写,那么并发访问并不是很好。
  • 本地到一台服务器(如果您有多台服务器,则必须将文件存储在每台服务器上 - NFS速度很慢)
  • 但你有很多空间


APC在记忆中:

  • 真的很快
  • 但你的空间较小
  • 它也是每个服务器的本地


memcached在内存中,在网络集群上:

  • 非常快(比APC略低;但仍然非常快)
  • 所有服务器之间共享:即使您有多个网络服务器,每个项目也只需缓存一次。
  • 您的memcached群集中可以有多个服务器(这意味着缓存大小几乎没有限制)