【问题标题】:Ruby on rails : memcached read value is nilRuby on rails:memcached 读取值为 nil
【发布时间】:2013-01-20 00:27:03
【问题描述】:

我继承了一个看起来使用 memcached 的 Rails 项目。

我有一个控制器,在一种方法中我将一个值存储在缓存中:

 Rails.cache.write("key", @var)

在随后在同一个控制器中调用的另一个方法中,我读回它:

@var = Rails.cache.read("key")

并且变量为零。为什么缓存不起作用? 我刚刚开始使用 ROR,所以很有可能它是非常基本的东西。

【问题讨论】:

    标签: ruby-on-rails memcached


    【解决方案1】:

    只需检查几件事:

    1. 您是否在开发环境中启用了缓存?

      您没有说明您使用的是哪个版本的 RoR,但是在 development 环境中默认情况下未启用缓存。

      要启用它,请在config/environments/development.rb 文件中设置config.action_controller.perform_caching = true

    2. 你启动了memcached服务器了吗?

      如果没有,请以memcached -vv开头

    如果在您尝试写入缓存时您的 memcached 服务器已关闭,则对 Rails.cache.write 的调用将返回 false,随后对 Rails.cache.read 的调用将因此返回 nil

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-15
      • 1970-01-01
      • 1970-01-01
      • 2013-10-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多