我有这个CakePHP数组,它定期更新(一个小时左右)并存储到memcached中。最近,我更改了数组的结构,因此在视图中更容易使用,但我仍然使用相同的名称/键缓存它。但是,我遇到了这个问题,偶尔,视图变得棘手(数组中的数据进入无序列表,如果数组返回空,则设置为不显示任何内容)。
奇怪的是,在我的控制器代码中,我有像(有点伪代码)的逻辑:
$list_array = array();
if(cache_read('key', 'controller_name')) {
$list_array = &cache_read('key', 'controller_name');
}
else {
$list_array = $this->Model->function_that_generates_the_same_array();
cache_write('key', $list_array, 'controller_name');
}
所以无论如何,都应该填充数组。
唯一改变的是数组的结构,但我不确定它是Memcached的错误还是我的代码。我倾向于将memcached作为问题,因为我在改变之前从未遇到过这个问题。
有什么想法?见解?我对memcached很新,所以任何帮助都表示赞赏。谢谢!
答案 0 :(得分:0)
您是否尝试过手动连接到memcached服务器并验证存储在那里的内容并返回?
尝试(将localhost更改为memcached服务器):
telnet localhost 11211
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
get key