Mailinglisten-Archive |
Hi, wir entwickeln hier ein dickes Redaktionssystem. Dabei wird das Web in einzelne Rubriken eingeteilt, in denen dann dynamisch mittels PHP und SQL die Seiten zusammengesetzt werden. Diese Daten verändern sich dabei nur meistens im Tagesrythmus. Dabei ist uns etwas eingefallen, um die Geschwindigkeit von PHP zu steigern. Es sollte dann oft etwa genauso schnell laufen, wie das direkte Abrufen einer HTML-Seite. Also man hätte die Vorteile von einem dynamischen und statischen Web zusammengeführt. Einschränkung: Anwendung geht aber nur auf PHP-Seiten, die nicht völlig dynamisch (ohne Form-Felder,...) sind, sondern sich vielleicht alle paar Wochen/Tage,.. je nach Änderung der Daten in der Datenbank sich ändern. Idee zur Realisation: "seite.php3?parameter" (parameter kann z.B. eine Datensatz ID sein) soll nicht immer das PHP Programm in "seite.php3" ausführen, sondern auch schon fertige Seiten aus einem Cache auf dem Server holen können. Das sähe dann in etwa so aus: PHP bekommt "verzeichnis-Pfad/seite.php3?parameter", dabei wird der Verzeichnis-Pfad als eindeutiger Wert (hier Z1) und "seite.php3?parameter" als eindeutiger Wert (hier Z2) zuerst umgewandelt . Dann schaut PHP nach, ob die Datei/bzw. HTML-Seite "Z1/Z2" sich im Server-Cache befindet. Ist dem so, wird die gecachte Seite zurückgeschickt, sonst wird "seite.php3?parameter" ausgeführt, und dann in den Cache als "Z1/Z2" abgelegt. * Wenn sich die Daten bzw. PHP-Seiten in einer Rubrik bzw. Pfad ändern, müssen alle Seiten in dem zugehörigen Pfad im Server Cache gelöscht werden. * In einer Liste auf dem Server sollten Datumsinformationen abgelegt werden, wann sich Daten einer Rubrik (wenn. z.B. Content, der ab einem bestimmten Datum online geschaltet werden soll) ändern und damit den zugehörigen Cache löschen sollen. * Es sollte möglich sein, bestimmte PHP-Seiten und Pfade, von diesem Mechanismus auszunehmen. * Ich denke getrennte Codierung von Pfad und Datei hat den Vorteil, das sich so bei Datenabhängigkeiten innerhalb einer Rubrik das Löschen vom Cache sich nicht direkt auf das gesamte Web auswirkt (es sollte dann sichergestellt werden, das sich Abhängigkeiten nicht über Rubrikgrenzen ergeben). Um das umzusetzen, müsste man PHP3 selbst ein wenig ergänzen. Wir haben allerdings das noch nicht programmiert. Gibt es schon sowas ? Sind da Schwächen im Vorschlag ? Hat jemand Verbesserungsvorschläge/Anregungen ? tschau, Nicolay Mausz http://www.flying-dog.com/contact
php::bar PHP Wiki - Listenarchive