Rails.cache.write returns 无

Rails.cache.write returns nil

我是 运行 Heroku 上的一个 rails 应用程序,使用 Memcached Cloud 附加组件。该应用程序是由一位现已离开的开发人员设置的。

我正在尝试使用内存缓存来存储一些临时数据,但我无法让它工作。最令人困惑的是,我对 Rails.cache.write 的调用每次都是 return nil。

我不想直接介入并搞乱缓存设置,因为它确实可以正常工作,而且这个应用程序足够大也足够复杂,我不想冒破坏任何东西的风险。

我用谷歌搜索了一段时间,但是这个 nil return 似乎没有记录在案的行为(它是 nil,不是假的)。

控制台输出:

$>heroku run rails console -app <myapp>
...
irb(main):002:0> Rails.cache.write("foo","bar")
Dalli::Server#connect pub-memcache-16992.xxxxxxxxx.com:16992
Dalli/SASL authenticating as memcached-appxxxxxxx
Dalli/SASL: Authenticated
=> nil

enviromments/production.rb

config.cache_classes = true
config.cache_store = :mem_cache_store,
                   ENV["MEMCACHEDCLOUD_SERVERS"].split(','),
                   { :username => ENV["MEMCACHEDCLOUD_USERNAME"],   :password => ENV["MEMCACHEDCLOUD_PASSWORD"] }

宝石文件:

gem 'dalli'

欢迎提出任何想法。

捂脸

缓存已满,因此无法写入,nil 是底层 dalli 客户端的记录响应。