Magento Backend-Performance verbessern

Backend-Dashboard

Leider kann es durch falsch programmierte Extensions vorkommen, dass diese die Performance beeinträchtigen. Eine Lösung für das Problem zu finden kann recht komplex sein. Mit ein paar Hilfsmittel kann man aber etwas Abhilfe schaffen.

Als ich auf mein Problem gestoßen bin, bin ich mit Hilfe einer „Profiler“-Extension auf Spurensuche gegangen. Für den Anwendungsfall bietet sich die Extension AOE-Profiler wirklich gut an, was ich im nächsten Abschnitt zeigen möchte.

AOE Profiler

Installation und Benutzung

Der AOE-Profiler kann über das Repository auf Github heruntergeladen und installiert werden (Dateien in das Projekt kopieren). Nach der Installation müssen noch ein paar kleinere Einstellungen vorgenommen werden, damit die Extension funktioniert.

folgende Datei muss hierzu zuerst umbenannt und dann bearbeitet werden.

#var/aoe_profiler.xml

die XML ist die Konfigurationsdatei für die Extension und es kann mit dieser festgelegt werden wann der Profiler ein Log aufzeichnet. Damit nicht bei jeder Anfrage ein Log erstellt wird, kann man den sogenannten „Trigger“ auf den Wert „parameter“ setzen.

Dies bedeutet, dass man mittels einer GET-Variable („?profile=1“) das Profiling, für die jeweilige URL, auslösen kann. Dies verhindert, dass bei jedem Seitenaufruf ein neues Profile-Log erstellt wird.

Man kann in der Konfigurationsdatei noch weitere Filter einstellen und damit bestimmte URLs ausschließen. Die Konfigurationsdatei ist hierfür gut dokumentiert.

Auswertung

Nachdem man nun die langsame Seite ausfindet gemacht hat und den Parameter gefunden hat, kann man sich das Log anschauen. Dies findet sich im Backend unter „System -> AOE Profiler“ wieder. Das Log wird in Form eines Baumes dargestellt.

Im nun dargestellten Baum kann man gut die Zeit und den Speicher auswerten und sich gezielt in den langsamen Bereich rein klicken und dort auf Spurensuche gehen.

Langsame Extensions ausfindig machen

Ich konnte mit dieser Methode zwei Extensions ausfindet machen, die bei jedem Aufruf auf Updates geprüft haben, was die Ladezeiten deutlich verringert hat. Nach dem Deaktivieren und Patchen der Extensions wurde die Ladezeit im Backend um 2 – 3 Sekunden schneller, was einen deutlichen Unterschied ausgemacht hat.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.