Seitenladezeiten temporär extrem langsam - Ursache finden
bearbeitet von Regina Schaukrug> An der Stelle musst Du halt durchhecheln und durchmessen,
~~~php
define ('DEBUG', true ); # false zum Abschalten
# …
if ( DEBUG ) {
$debugName = "DER VON DIR VERGEBENE EINDEUTIGE NAME für die Aktion";
$debugStartTime[$debugName] = microtime( true );
}
### Hier Deine Aktionen (Befehlszeilen) ###
if ( DEBUG ) {
error_log("DEBUG: Aktion " . $debugName . " dauerte " . microtime( true ) - $debugStartTime[$debugName] . Sekunden.");
}
~~~
Mit
~~~sh
grep "DEBUG:" /var/log/apache2/error.log
~~~
findest Du im Error-Log alle Ausgaben für alle Messungen.
Mit
~~~sh
grep "DER VON DIR VERGEBENE EINDEUTIGE NAME für die Aktion" /var/log/apache2/error.log
~~~
kannst Du dann nachsehen wie lange bestimmte Aktionen gedauert haben. Bei Auffälligkeiten musst Du dann tiefer einsteigen und herausfinden warum das so ist. Wie gesagt ist das für Dateisystemzugriffe, Datenbankzugriffe und alle Zugriffe auf externe Ressourcen zu machen. Was dann genau zu tun ist kann man nur im Einzelfall entscheiden und darstellen. Ein "Kochbuch" zu dem Thema mit Abdeckung von nur 5% der wahrscheinlichsten Fälle würde ich mir gut bezahlen lassen…
**Update:** an verschachtelte Messungen angepasst.
Seitenladezeiten temporär extrem langsam - Ursache finden
bearbeitet von Regina Schaukrug> An der Stelle musst Du halt durchhecheln und durchmessen,
~~~php
define ('DEBUG', true ); # false zum Abschalten
# …
if ( DEBUG ) {
$debugName = "DER VON DIR VERGEBENE NAME für die Aktion";
$debugStartTime = microtime( true );
}
### Hier Deine Aktionen (Befehlszeilen) ###
if ( DEBUG ) {
error_log("DEBUG: Aktion " . $debugName . " dauerte " . microtime( true ) - $debugStartTime . Sekunden.");
}
~~~
Mit
~~~sh
grep "DEBUG:" /var/log/apache2/error.log
~~~
findest Du im Error-Log alle Ausgaben für alle Messungen.
Mit
~~~sh
grep "DER VON DIR VERGEBENE NAME für die Aktion" /var/log/apache2/error.log
~~~
kannst Du dann nachsehen wie lange bestimmte Aktionen gedauert haben. Bei Auffälligkeiten musst Du dann tiefer einsteigen und herausfinden warum das so ist. Wie gesagt ist das für Dateisystemzugriffe, Datenbankzugriffe und alle Zugriffe auf externe Ressourcen zu machen. Was dann genau zu tun ist kann man nur im Einzelfall entscheiden und darstellen. Ein "Kochbuch" zu dem Thema mit Abdeckung von nur 5% der wahrscheinlichsten Fälle würde ich mir gut bezahlen lassen…