2016-05-16 3 views
1

Ich arbeite an einer Website für eine Intranet. Ich möchte die Leistung optimieren und weiß, dass das Skript, das ich lade, nicht häufig geändert wird. Ist es besser, die Zeichenkette davon (von einer xhttp-Anfrage) in den lokalen Speicher zu cachen, zusammen mit einer Ablaufzeit von ungefähr einer Stunde oder so. Und dann vom lokalen Speicher laden und dynamisch in das DOM einfügen.Ist das Konzept von basket.js, Skripte in lokalen Speicher zwischenzuspeichern, immer noch eine gute Idee?

Weiß jemand, ob diese Methode immer noch eine gute ist? Der Browser, den ich verwenden muss, ist IE11 (IE10 Rendering-Modus). Oder Chrom 49.

Dank

+0

Sie sind verwirrt zwischen lokaler Speicherung von Daten vom Server und Caching von Skripten, die automatisch vom Browser basierend auf gesendeten Headern durchgeführt wird. – Vishwanath

+0

Wenn am Ende, wenn ich nur die JavaScript-Zeichenfolge ausführen muss, macht es einen Unterschied, wenn ich es aus dem lokalen Speicher oder eine Anfrage erhalten und es bekommen? – omega

Antwort

0

Forget „noch“, wie das war nie eine gute Idee. Der Web-Browser kann alle Caching für Sie behandeln, nur entsprechende Cache-Header setzen (in Ihrem Fall nicht zu überprüfen   — nicht einmal eine If-Modified-Since Anfrage   — für eine Stunde, wie das ist, was Sie mit lokalen Speicher tun beschreiben) und lassen Sie den Browser seine Arbeit machen.

+0

Was ist das? Tests von Google und Bing haben gezeigt, dass es Leistungsvorteile beim Zwischenspeichern von Assets in localStorage (insbesondere auf Mobilgeräten) im Vergleich zum einfachen Lesen und Schreiben aus dem Standard-Browser-Cache gibt. Dieses Projekt arbeitet zur Zeit daran, diese Tests in der Öffentlichkeit zu replizieren, so dass wir definitive Statistiken darüber haben, ob dies zutrifft. Meidet diese Methode nicht die Notwendigkeit, eine Get-Anfrage zu machen, um sogar zu überprüfen, ob eine neue Datei vorhanden ist Server? – omega

+0

@omega: Woher kommt dieses Zitat? Caching-Header können dem Browser mitteilen, dass er sich nicht einmal um die Anfrage kümmern soll (was ich mit "nicht einmal eine" If-Modified-Since "Anfrage gemeint habe) –

+0

Ich könnte mir ein * sehr geringes vorstellen * Nutzen basierend auf lokalem Speicher mit weniger Inhalten und somit schnellerem Nachschlagen, aber ich würde es nicht als Grund für die Verwendung von lokalem Speicher für Caching-Zwecke betrachten –

Verwandte Themen