Yii 是Memcache还是文件缓存?

Yii 是Memcache还是文件缓存?,yii,Yii,我最近为一个网站设置了memcache。然而,让memcache为设计师和开发人员工作总是一件痛苦的事情。我想切换到文件缓存。其他选项中有哪一个能击败Memcahce,或者至少在性能上或多或少相当 我正在考虑使用:如前所述,这在某种程度上取决于您是否需要分布式缓存,以及是否需要缓存在所有环境中都完全相同。如果您已经在使用数据库并在大多数情况下打开数据连接,则可以使用 我有一个web应用程序,它部署在几个不同的环境中,由不同类型的用户部署,因此我设置了一个服务器环境变量来选择缓存系统。Redis是

我最近为一个网站设置了memcache。然而,让memcache为设计师和开发人员工作总是一件痛苦的事情。我想切换到文件缓存。其他选项中有哪一个能击败Memcahce,或者至少在性能上或多或少相当


我正在考虑使用:

如前所述,这在某种程度上取决于您是否需要分布式缓存,以及是否需要缓存在所有环境中都完全相同。如果您已经在使用数据库并在大多数情况下打开数据连接,则可以使用

我有一个web应用程序,它部署在几个不同的环境中,由不同类型的用户部署,因此我设置了一个服务器环境变量来选择缓存系统。Redis是生产环境的默认配置(性能相当类似于memcache,但没有波动性),而CDbCache是其他环境的默认配置,如果有APC,则可以选择APC,如果所有其他环境都失败,则可以选择File。在配置中,您可以设置如下内容:

if ($cache == 'redis') {
    $cache_config = array(
        'class' => 'packages.redis.ARedisCache');
} elseif ($cache == 'apc') {
    $cache_config = array(
        'class' => 'system.caching.CApcCache');
} elseif ($cache == 'file') {
    $cache_config = array(
        'class' => 'system.caching.CFileCache');
} else {
    $cache_config = array(
        'class'=>'system.caching.CDbCache',
        'connectionID'=>'db'
    );
}

它取决于缓存使用的许多因素。有很多数据吗?应该分发吗?对于单服务器系统来说,APC或XCache很好,而且缓存操作码。文件缓存比memcache慢很多。APC是另一个很好的选择,但在机器集群中做得不好