我尝试使用外部缓存引擎 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的配置吗?
先谢谢你!
答案 0 :(得分:0)
感谢您的回复。
此问题现已关闭。我们必须允许EC2和CloudCache Cluster之间的IP访问。