CakePHP是否支持APC、XCache等?
发布于 2010-04-10 08:13:17
在cake的/app/config/core.php中,有一些选项可用于设置缓存引擎(版本高于1.2).e.g
APC (http://pecl.php.net/package/APC)
Cache::config('default', array(
'engine' => 'Apc', //[required]
'duration'=> 3600, //[optional]
'probability'=> 100, //[optional]
'prefix' => Inflector::slug(APP_DIR) . '_', //[optional] prefix every cache file with this string
));发布于 2010-04-10 02:39:45
它应该支持APC作为操作码缓存--毕竟这只是PHP代码。
似乎有一个与APC相关的类将APC用作数据的缓存:请参阅ApcEngine。
另请参阅手册中的:7.2.2 Cache Engines in Cake,其中说明了对APC、XCache、文件和memcached的支持。
发布于 2010-04-13 22:20:04
除了已经提供的其他很好的答案之外,还有一些技巧可以让cake使用文件缓存以外的任何东西来进行内部缓存。这段代码将使cake使用APC,Xcache,无论它的核心缓存是什么(本例中为APC)
Cache::config('_cake_core_',
array(
'engine' => 'Apc',
'duration'=> 3600,
'probability'=> 100,
)
);Cake也可以缓存你的模型,方法是把它放到你的控制器/appcontroller中。
var $persistModel = true;但是,模型只能使用文件缓存
这些都是从这篇文章中窃取的,这篇文章包括了一系列使用cake的缓存机制来提高应用程序速度的方法
http://www.pseudocoder.com/archives/8-ways-to-speed-up-cakephp-apps
此外,正如Pascal所提到的,通过安装和配置APC,您的PHP操作码将自动缓存。
为了更好地缓存,php支持memcache作为文件的替代方案作为会话存储,这在负载平衡环境中特别有用。单服务器实现的一个示例是将此代码放入ini中。
extension=memcache.so
session.save_handler = memcache
session.save_path = "tcp://127.0.0.1:11211?persistent=1"在你的core.php里有这个
Configure::write('Session.save', 'php');https://stackoverflow.com/questions/2609900
复制相似问题