如何配置cakephp以使用memcached

时间:2015-10-12 23:49:39

标签: php cakephp caching amazon-web-services memcached

我尝试使用外部缓存引擎 memcached 来为我的CakePHP应用程序供电。

我有运行应用程序的AWS EC2实例,还有一个AWS ElastiCache群集,其中一个节点使用memcached。还安装并启用了memcache和memcached php模块。

app.php文件中的配置如下:

'Cache' => [
         'default' => [
            'className' => 'File',
            'path' => CACHE,
        ],

        'elastic' => [
            'className' => 'Cake\Cache\Engine\MemcachedEngine',
            'compress' => false,
            'duration' => '+2 minutes',
            'groups' => [],
            'host' => 'yyy.euw1.cache.amazonaws.com:11211',
            'username' => null,
            'password' => null,
            'persistent' => false,
            'prefix' => 'cake_',
            'probability' => 100,
            'serialize' => 'php',
            'servers' => ['yyy.euw1.cache.amazonaws.com:11211'],
            'options' => [],
             'lock' => true
        ]

要选择是否查询数据库,请使用以下条件:

if (($car = Cache::read('car', 'elastic')) === false) {

    $car = $this->Cars->get();
    Cache::write('car', $car, 'elastic');

}

不幸的是,在长页面加载后,我收到了这个错误:

"elastic cache was unable to write to DebugKit\Cache\Engine\DebugEngine cache"

有谁知道这个错误的根源?有人可以使用外部缓存引擎指导我完成memcached for cakephp的配置吗?

先谢谢你!

1 个答案:

答案 0 :(得分:0)

感谢您的回复。

此问题现已关闭。我们必须允许EC2和CloudCache Cluster之间的IP访问。