Guten Spätnachmittag SelfHTML-Forumsgemeinde,
ich weiß es gibt den Themenbereich "Meinung" und auch für den Umsetzungsteil meiner Frage wäre eventuell "PHP" besser geeignet, aber da meine Frage zwei Aspekte hat und ich Doppeltposting nach der Charta vermeiden wollte, habe ich mich für "Sonstige" entschieden.
Es geht um Caching. server- wie clientseitig, hierbei möchte ich 4 Seitentypen unterscheiden:
Typ 1: vollkommen statische Seite
Typ 2: Der eigentliche Inhalt der Seite bleibt statisch, jedoch gibt es dynamische Bereiche alla "Aktuelles Wetter". Sprich statische Seite mit einem regelmäßig dynamischen Block.
Typ 3: Dynamische Seite, z.B. Artikel mit der Möglichkeit Meinungen zu dem Artikel loszuwerden. Sprich die dynamische Seite lässt es zu, bestimmte zeitlich begrenzten Statischen Seiten anzunehmen.
Typ 4: Vollkommen Dynamische Seite, z.B. ein Formular, das jegliche Art von Input-Validierung mit Ausgaben, die den User jeweils auf den Fehler hinweisen, vornimmt, oder einen persönlichen Userbereich.
Hier wäre jetzt die Möglichkeit die Meinungsfrage unterzubringen:
Für welche der Typen findet ihr serverseitiges Caching sinnvoll?
Für welche der Typen findet ihr clientseitiges Caching sinnvoll?
Sonsige Meinungen?
Nun zum Umsetzungsteil:
Bei meinem miniCMS besteht jedes Seite, aus einem Template, das bestimmte "Blöcke" erfordert. Sagen wir Inhalt, Meta-Angaben, eigene CSS und/oder Javascript. Diese Blöcke können sich unendlich tief selber wieder einschließen - Inhalt umfasst zum Beispiel die Blöcke Text, Fußzeile, Kopfzeile. Jeder Seite werden diese Blöcke zugeordnet, wobei zum Beispiel allen Seiten der Block Fußzeile zugeordnet wird.
Jeder Block erhält den aktuellen Timestamp bei einer Änderung.
Nun ist meine Frage, ob es sich lohnt, sofern es sich um Zusammensetzungen von statischen Blöcken aus einer Datenbank handelt, serverseitiges Caching z.B. in einer Datei überhaupt sinn macht?
Des Weiteren Frage ich mich, ob ich immer den jüngsten der Blöcke-Timestamps als Modified-header senden soll oder nicht?
Macht es bei dynamischen Teilen Typ 3 Sinn, diesen Teil als Unter-Block zu Cachen?
Ich weiß das klingt alles wirr, aber ich weiß nicht, ob es Sinn macht wirklich nur komplette Seiten vom Typ 1 zu Cachen. Oder ob es z.B. auch Sinn macht den Block Navigation, der aus einer NestedSets-Tabelle erstellt wird Sinn macht diesen zu Cachen, da dort die richtige Umsetzung und Schachtelung und Aufklappung doch etwas Zeit benötigen kann.
Mir geht es um das Grundprinzip, und wie im heutigen WWW, wo es kaum noch Seiten gibt, in denen man noch nichtmal einen dynamischen "Spruch des Tages"- oder "Wetter des Tages"-Block findet.
Grüße