私はそのapiキーを使ってユーザーオブジェクトをキャッシュして読み込もうとしている。使用はうまくキャッシュされ、レールコンソールでキャッシュを読み取ることができますが、何故ならレールアプリで同じ正確なRails.cache.readを実行すると常にnilが返されます。Rails.cache.readはレールではnilを返すが、コンソールでは返さない。
私がやっていることの一例。これはbefore_filter
関数内にあります。
def authKey
#?api=ce6f95a8bf7f9861330ede58f8972981
key = params[:api]
cu = Rails.cache.read(key)
#<do some logic>
logger.debug("CACHING USER #{key}")
Rails.cache.write(key, user)
cu
は常にゼロになりますが、オブジェクトがメモリキャッシュに存在しています。他の誰かがこの種の問題にぶつかっていますか?私は圧縮を有効にしてdalli gemを使用しています。
この設定は、全体としてのみRails.cacheない、コントローラにキャッシュに適用されます。 –