Und - das gilt nur für eine Handvoll Module und Plugins, die genutzt werden.
Man muss wissen, das der überwiegende Teil aller deutschen Domains und damit vermutlich auch der Domains im Rest der Welt auf 8 MB Speicherbedarf bei der Scriptgröße eingestellt ist.
Der Speicherverbaruch läßt sich dann leicht ermitteln, wenn PHP über die Funktion memory_get_usage verfügt und das dürfte zunmindest bei allen Linuxrechnern der Fall sein.
Das beliebte Xampp für Windows verfügt nicht über diese Funktion.
Im Besucherteil ist die Abfrage bereits vordefiniert, um sie sehen zu können, muss man bei der Anweisung lediglch die Auskommentierung entfernen.
Im Adminteil ist es am einfachsten, wenn man in der Datei header.php ganz unten so ändert:
echo memory_get_usage()." bytes of memory
";
?>
Dann kann man oben unterhalb der Navigationsleiste den Verbrauch sehen, der zwar an dieser Stelle geschmeichelt ist, da danach noch diverse PHP - Teile aktiv werden, aber für den Zweck reicht es.
Sicher gibt es einige die sich nicht für das Thema interessieren - ich bräuchte das auch nicht, denn ich bin da erheblich besser ausgestattet - die meisten halt nicht.
Und - die Grenze der Ausbaufähigkeit ist langsam aber sicher erreicht, insbesondere weil alle Werte nur statisch sind.
Tatsächlich können PHP Scripte während ihres Ablaufes mehr Speicher benötigen, als am Ende abgerechnet wurde - Speicher wird ja auch wieder frei gegeben.
Der Speichebedarf wächst z.B. mit der Menge der Inhalte.
Was passiert denn nun, wenn eine Überschreitung passiert ?
Die Scriptausführung hält mit einer Fehlermeldung an und das war's - die CMS ist damit an der Stelle nicht mehr zu gebrauchen. Wird nicht irgend etwas entfernt, wird der Fehler immer wieder auftreten.
Weiterer Ausbau
So schön das mit der Ecke für Developer auch ist, es wird ja genutzt und es kommt immer mehr hinzu.
Das bedeutet aber auch, das mehr davon eingesetzt wird und die Säge schneller klemmen wird, als man denken kann.
Adodb ist ein Speicherfresser ohne gleichen - ca. 1,3 MB nur für das Öffnen der Datenbank, wozu Mysql direkt gerade mal 1024 Bytes benötigt.
Da wäre eine EInsparmöglichkeit.
Und man sollte die Developer zwingen, Angaben zum RAM - Bedarf zu machen (ich fange damit an), damit ein Nutzer die Chance einer Entscheidung hat.
Welche Ideen gibt es noch
