WordPress bietet dem Entwickler eine einfache Möglichkeit AJAX-Calls zu implementieren – die Steuerung dieser Calls übernimmt die admin-ajax.php, die sich in /wp-admin/ befindet.
Teilweise führt diese Datei aber auch zu Performance Problemen. Eine Ladezeit von 15-20 Sekunden kann schon möglich sein. Doch wie geht man nun vor? Wie finde ich heraus, welcher Bestandteil einer Website für die Problematik verantwortlich ist?
Man liest immer „Deaktiviere alle Plugins und analysiere die Performance nach jeder Deaktivierung erneut“. Zugegeben: Das ist durchaus eine Möglichkeit, aber dies kann sehr zeitaufwändig werden. Auch wenn ich ein Plugin deaktiviert habe, weiß ich noch nicht welcher Bestandteil des Plugins nun wirklich für die schlechte Performance verantwortlich ist.
Die Lösung? Eine Performance Analyse mit GTmetrix
Ich habe GTmetrix eingesetzt, um genau zu analysieren welche Funktion für die Ladezeit verantwortlich ist. In GT Metrix gibt das Wasserfall-Diagramm hier die nötigen Informationen preis. Wenn GTmetrix die Analyse abgeschlossen hat, können wir nach admin-ajax.php suchen und sehen dies:
Wir sehen hier, dass die admin-ajax.php drei Mal aufgerufen wird – das Plugin AdRotate ruft die Datei mit dem Parameter adortate_impression auf und benötigt für alle drei Calls 9,95 Sekunden. Dies entspricht bei einer Gesamtladezeit der Seite von 17.79s ca. 55%!
Nach kurzer Recherche war klar, dass adrotate_impression ausgelöst wird, wenn bei AdRotate der dynamische Modus verwendet wird. Dies ist ein Modus, bei dem sich auf einem Bannerplatz nach eingestellter Zeit der Banner austauscht, ohne das der Besucher die Seite verlässt. Schaltet man den dynamischen Modus nun ab, spart man sich ca. 9 Sekunden Lade-/Wartezeit.
Schreibe einen Kommentar