Frage

Was sind einige Vorteile der Verwendung von etags / abgestanden sein würde? / Fresh_when? anstelle von Seiten-Caching (auf einem Datei-Cache)?

Apache automatisch verarbeitet etags für statische Dateien, aber selbst wenn es nicht klappt, Seiten-Caching würde noch besser sein, da die Rails-Anwendung selbst nicht aufgerufen wird.

Also, in welchen Fälle würde ich die Methoden verwenden, die von Rails (abgestanden? / Fresh_when?)?

War es hilfreich?

Lösung

Sie sind wirklich kostenlos zur Verfügung. Etags / fresh_when usw. helfen Sie mit nachgeschalteter Caches schön spielen (wie Ihren eigenen Lack / Squid-Instanzen oder Rack-:: Cache oder den Browser-Cache oder ISP Proxy-Server ...)

Seite Caching erspart Ihnen Schlagen Sie Ihre Schienen vollständig stapeln, weil Apache / Webserver die Datei dienen, so werden keine DB-Lookups. Aber Sie haben mit dem Cache-Ablauf zu behandeln, den Cache frisch zu halten.

etags / bedingte get verwenden, können Sie nicht viel Verarbeitungszeit sparen, da Sie immer noch alle Datensätze auf der Seite verwendet werden, müssen zu bekommen:

def show
  @article = Article.find(params[:id])
  @feature = Feature.current
  fresh_when :etag => [@article, @feature] 
end

in dem Fall, dass der Benutzer eine aktuelle Seite hat, es spart Ihnen einig Rendering-Zeit und die Bandbreite um die Seite zu senden nach unten erforderlich ist.

Andere Tipps

Eine weitere Anwendung, die mir einfiel war, dass Sie noch einige Informationen verarbeiten können, bevor Rails auszuteilen die „304 Not Modified“ Header im Stich gelassen. Wie, wenn Sie wollen Treffer auf einer Seite aufzunehmen.

Eine Sache, die den Sinn kommt, ist, dass fresh_when werden Sie noch einige Rendering sparen, auch wenn Sie die gesamte Seite Cache gelöscht. Hier würden Sie sowohl im Tandem mit.

Ich bin neugierig auf andere Antworten als gut.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top