2017-04-16

read_fragmentとフラグメントキャッシュ

のサブクラスのインスタンス(及びそのArray)になってしまう場合は、Rails.cache.fetchなどのアプリキャッシュを利用するのが良さそうです。Rails.cache.fetchであれば値を取得/格納する過程が変わるだけでビューに渡される結果は同じになり、今回のようなキャッシュ切れによる差分が発生しません。

評価タイミングがミリ秒レベルの差分なので、そもそも発生しにくい問題ではありますが、再現しづらい事象なのでフラグメントキャッシュを利用する場合はこれらの挙動を考慮した方が良さそうです。]]>

このエントリーをはてなブックマークに追加