SQL-Datensätze in Cache speichern?

Dsimon24

Lieutenant
Registriert
Aug. 2016
Beiträge
595
Hallo!

Ich rufe über PHP aus einer MySQL-Datenbank viele Datensätze ab, die ich in einer Tabelle darstelle.
Kann ich diese Datensätze im Browser-Cache speichern, dass das erneute abrufen dieser Tabelle,
wenn ich die Seite verlasse und anschließend wieder aufrufe, optimiert wird bzw. schneller erfolgt?

VG, David
 
Können schon, sinnvoll nein.

Wenn die Kalkulation der Daten zulange dauert ist es wahrscheinlich ein Programmierfehler oder die Query ist so unoptimiert und unperformant geschrieben das Mysql erstmal einige Sekunden braucht.

Generell sollte es keine Probleme darstellen tausende Ergebnisse in Millisekunden auszuliefern.


Ansonsten localStorage vom Browser nutzen. Ist aber keine schöne Lösung da die Daten dann nicht mehr persistent sind.

alternativ Cache auf Serverseite - Ergebniss Cachen in Mysql selbst oder Redis und dann in PHP einen CacheWrapper drum
 
Miss doch einfach mal die Zeit für das Auslesen der Daten, dann wirst du sehen, dass die Zeit vermutlich fürs Rendern der Webseite verbraucht wird. Wenn dem so ist, dann sparst du dir eigentlich nichts.

Ansonsten kannst du natürlich über Singlepage-Applikationen die Inhalte einfach verdecken und bei Bedarf wieder anzeigen. Aber dafür musst du dein komplettes Frontend umbauen.

Edit:
Du kannst auch mal im Chrome auf F12 drücken und dann auf Timeline gehen. Hier siehst du dann gleich, wo die Zeit verbraten wird (aus Browser-Sicht). Z. B. für Amazon Blitzangebote von PCGH hat das Laden insgesamt 6,9s gedauert und dabei hat das eigentliche Datenladen nur 235ms gedauert, das Rendern deutlich länger:
pcgh_amazon_blitzangebote.PNG
 
Zuletzt bearbeitet:
Erstmal vielen Dank für eure Antworten.

Ich habe jetzt herausgefunden, dass wirklich die meiste Zeit für das Rendern der Site verbraucht wird.
 
Zuletzt bearbeitet:
Dsimon24 schrieb:
Erstmal vielen Dank für eure Antworten.

Ich habe jetzt herausgefunden, dass wirklich die meiste Zeit für das Rendern der Site verbraucht wird.

Auch das lässt sich optimieren, poste mal ein/zwei Sätze deiner Tabelle und wie viel Sätze du ausgibst, außerdem könnte evtl Javascript was da im Nachhinein drüberrödelt übel Zeit fressen. Achso: wie lange die Site braucht wäre als Info auch nicht unwichtig.
 
Zurück
Oben