enyim和memcached:NOT_STORED错误

时间:2009-11-12 22:16:34

标签: memcached

我们正在通过enyim使用memcached 1.2.4,并且发现很难获得一些缓存的对象。如果我观看memcache控制台,它只是说'NOT_STORED'。

我认为我们需要使用[serializable],但这并不总是有效。我找不到任何文档或相关的谷歌点击。

这里有人有任何线索吗?

由于

3 个答案:

答案 0 :(得分:3)

强烈建议升级您的memcached版本。

NOT_STORED意味着,您的数据未存储。如果使用add命令存储数据,则表示该密钥下已有数据。如果您使用的是replace,则表示该密钥下的不是数据。你可能只是set

答案 1 :(得分:0)

谢谢,对不起,迟到了。

问题是双重的。使用[Serializable]不适合某些对象,因此我们必须实现ISerializable。我们也使用ADD而不是SET。

从内存中我找不到memcached的升级版本,一旦修复了上面的内容就行了。

干杯

答案 2 :(得分:0)

我有这个问题......我正在运行类似的东西:

var = CACHE.fetch("key_name",1.day,true) do
  ModelName.find_by_id(id)
end

所以我有活动记录为我找到了一条记录,但我不知道memcached没有存储nil值。发生的事情是活动记录返回零,因为它无法找到记录,因此我告诉memcache存储零值。修复只是这个:

var = CACHE.fetch("key_name",1.day,true) do
  ModelName.find_by_id(id) || ""
end

我使用Ruby来编写代码。希望这会有所帮助。