Da Datenbanktransaktionen in unserer App immer zeitraubender werden, haben wir begonnen, Memcached zu verwenden, um die Anzahl der an MySQL übergebenen Abfragen zu reduzieren.Best Practices für die Verwendung von Memcached in Rails?
Alles in allem funktioniert es gut und spart wirklich viel Zeit.
Aber wie Caching wurde als Abhilfe „still erscheinen“, um die App mehr Saft zu geben, viele unserer Modelle jetzt enthalten Code wie folgt aus:
def self.all_cached
Rails.cache.fetch('object_name') {
find(
:all,
:include => [associations])
}
end
Dies wird immer mehr und mehr Schmerzen als Füllung und das Löschen des Cache erfolgt in mehreren Klassen über die Anwendung.
Nun habe ich mich gefragt, ob es eine bessere Möglichkeit gibt, Memcached-Logik zu abstrahieren, um sie leistungsfähiger und einfacher für alle benötigten Modelle zu machen?
Ich habe über eine Art Memcached-Modul nachgedacht, das in allen benötigten Modulen enthalten ist.
Aber bevor um zu spielen, dachte ich: Die Experten der erste
Matt
Danke, funktioniert brilliant. – Matt
können Sie einen empfehlen oder sagen Sie einen von Grund auf neu schreiben? Diese Antwort scheint nicht vollständig zu sein –