【问题标题】:enyim and memcached : NOT_STORED errorsenyim 和 memcached : NOT_STORED 错误
【发布时间】:2009-11-12 22:16:34
【问题描述】:

我们正在通过 enyim 使用 memcached 1.2.4,并且发现很难将一些对象缓存起来。如果我查看 memcache 控制台,它只会显示“NOT_STORED”。

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

这里有人有线索吗?

谢谢

【问题讨论】:

    标签: memcached


    【解决方案1】:

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

    NOT_STORED 意味着您的数据没有被存储。如果您使用add 命令存储数据,这意味着该键下已经有数据。如果您使用replace,则表示该键下没有 数据。你可能是set

    【讨论】:

      【解决方案2】:

      感谢您迟到的回复。

      问题有两个方面。对于某些对象,使用 [Serializable] 是不够的,所以我们必须实现 ISerializable。我们也使用 ADD 而不是 SET。

      从内存中我找不到 memcached 的升级,一旦我们修复了上面的问题,它就可以工作了。

      干杯

      【讨论】:

        【解决方案3】:

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

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

        所以我让活动记录为我找到了一条记录,但我不知道 memcached 不存储 nil 值。发生的事情是活动记录返回 nil,因为它找不到记录,因此我告诉 memcache 存储一个 nil 值。解决方法很简单:

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

        我使用 Ruby 进行编码。希望这会有所帮助。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2012-05-15
          • 2012-06-11
          • 1970-01-01
          • 2010-10-08
          • 2014-10-04
          • 1970-01-01
          • 2023-03-13
          • 2014-01-19
          相关资源
          最近更新 更多