phpbar.de logo

Mailinglisten-Archive

[php] Idee für PHP Geschwindigkeitssteigerung
Archiv Mailingliste php_(at)_infosoc.uni-koeln.de

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[php] Idee für PHP Geschwindigkeitssteigerung



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






Home | Main Index | Thread Index

php::bar PHP Wiki   -   Listenarchive