アプリでのデータベース トランザクションに時間がかかるようになっているため、memcached を使用して MySQL に渡されるクエリの量を減らし始めました。
全体として、うまく機能し、多くの時間を節約できます。
しかし、キャッシングはアプリをさらに活用するための回避策として「静かに現れた」ため、多くのモデルには次のようなコードが含まれるようになりました。
def self.all_cached
Rails.cache.fetch('object_name') {
find(
:all,
:include => [associations])
}
end
アプリケーション全体のいくつかのクラスでキャッシュのフィルとフラッシュが発生するため、これはますます苦痛になっています。
さて、memcached ロジックを抽象化して、必要なすべてのモデルでより強力で使いやすくするためのより良い方法があるかどうか疑問に思っていました。
必要なすべてのモジュールに含まれるある種の memcached-module を持つことを考えていました。
しかし、いじる前に、まず専門家に聞いてみましょう :-)
ありがとう
マット