2015-07-15 2 views
1

Я запускаю приложение rails на Heroku, используя Memcached Cloud add-on. Приложение было настроено разработчиком, который уже давно ушел.Rails.cache.write возвращает nil

Я пытаюсь использовать memcache для хранения некоторых временных данных, но я не могу заставить его работать. Самое сбивающее с толку, это мои призывы к Rails.cache.write, которые возвращают нуль каждый раз.

Я не хочу просто прыгать и путаться с настройкой кеша, потому что он работает, и это приложение достаточно велико и достаточно сложное, что я не хочу рисковать чем-либо.

У меня есть какое-то время для поиска в googled, но это возвращение 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"] } 

Gemfile:

gem 'dalli' 

Любые идеи будут приветствоваться.

+0

Извините, скажите - Бегущие рельсы 4.0.5 на рубине 2.1.1 –

ответ

1

Facepalm

Кэш был полон, поэтому он не мог писать и ноль является документально ответ для базового Далли клиента.

Смежные вопросы