2012-02-20 7 views
0

私はこのCakePHP配列を定期的(1時間程度)に更新してmemcachedに格納しています。最近では、配列の構造を変更してビューで作業するのが簡単ですが、同じ名前/キーでキャッシュしています。しかし、私はこの問題に遭遇していますが、しばらくの間、ビューが狂ってしまいます(配列のデータは順序なしリストに入り、配列が空の場合は何も表示しないように設定されています)。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

memcachedサーバーに手動で接続し、そこに保存されているものを検証して返されましたか?

てみてください(あなたのmemcachedサーバへの変更はlocalhost):

telnet localhost 11211 
Trying 127.0.0.1... 
Connected to localhost. 
Escape character is '^]'. 
get key 
+0

ええ、私が持っています。それはそこにあります。 –

+0

それがうまくいくならば、問題はmemcachedであるとは思えません。しかし、単純なテストを行うだろう...ちょうどmemcachedに接続するPHPページを作成し、値を取得し、それをダンプします。それがうまくいくならば、問題は他にもあるでしょう。 –

関連する問題