caching (Pseudo) dynamic Content

Bash, Shell, PHP, Python, Perl, CGI
Anonymous

caching (Pseudo) dynamic Content

Post by Anonymous » 2008-09-13 18:41

Hallo, Ich bin dabei heraus zu finden wie ich folgendes am besten mache, und bräuchte mal ein paar Meinungen von anderen.

Ich habe ein Script, (für verschiedene Hosts) das jeden eingehen Request Dynamisch auf einen DBMS eintrag mappt. (Der Inhalt ändert sich fast nie, wie bei jedem CMS)
Ich mache mir gerade Gedanken über Sinnvolles caching und es gäbe folgende Möglichkeiten


1.) Das Script macht das komplette Caching. => Der Content wird bei jedem Edit neu Gerendert. Auf die Platte geschrieben. Und von dem Script jedesmal von da gelesen (Wenn File Vorhanden) (=> So wird das oft bei verschiedenen Frameworks und Scripts gemacht, wenn die internes caching aktiviert haben.)


2.) Das Script rendert die Files. Schreibt sie in eine VHost Umgebung. Dort werden sie dann Statisch von Apache ausgelesen. wenn nicht vorhanden wird bei 404 auf das Script verbogen, was dann dieses File rendern würde und cachen. (Vermeidung und abfangen von Fehlermeldungen) jeder weitere aufruf würde das fertige HTML als File Ausliefern, als ob es Statisch wäre


3.) Apache hat volle Kontrolle über das Caching mit allem was mod_cache (oder in dem fall evtl mod_disk_cache) zu biete hat. Das File wird Dynamisch gerendert, landet im Apache Disk Cache. (Mem Cache lohnt nicht, ist zu viel Inhalt dafür) (Würde Disk Cache nicht sowieso das selbe machen (auch von der Prozesslast) Wie Das Rendern auf eine Statische Vhost Umgebung ?)



Welche möglichkeit wäre die beste herangehensweise. Ich stehe bei der Auswahl ein wenig auf dem schlauch grade und brauch ein wenig Input von anderen.
Auf der einen Seite möchte ich das Rad nicht neu erfinden. (Schliesslich gibt es ja schon ein cache modul für Apache) auf der anderen Seite hätte es auch was, wenn das Script das noch handelt, (z.b. für Logging könnte man da noch dinge in eine DB schreiben). Der Zwischenschritt mit dem Vhost ist auch nichit ganz unattraktiv. Und dann wäre da noch mod_cache, was sozusagen schon fertig Implementiert ist und nur installiert werden müsste. (habe ich zwar noch nie benutzt, doch das wäre wohl das kleinste problem)

Für mich geht es darum erstmal einen "Optimalen" Weg zu finden und die Vor und Nachteile der verschiedenen Möglichkeiten abzuwägen. Vielleicht fällt dir ja was dazu ein, dann schreibe doch bitte deine Gedanken mal hier auf :-)

User avatar
daemotron
Administrator
Administrator
Posts: 2635
Joined: 2004-01-21 17:44

Re: caching (Pseudo) dynamic Content

Post by daemotron » 2008-09-13 22:26

Wenn Du das Skript nur für Dich nutzt, würde ich einfach die Caching-Möglichkeiten des verwendeten Webservers nutzen. Wenn Du das Skript aber für Kunden entwickelst, solltest Du das Caching über das Skript implementieren, da Du nicht voraussetzen kannst, dass jeder, der das Skript nutzt, auch die Möglichkeit hat, die Konfiguration seines Webservers zu beeinflussen (Shared Hosting etc.).