Wordpress: Beitragsseite lädt langsam...
misterunknown
- sonstiges
0 hotti0 misterunknown
0 GELÖST
misterunknown0 dedlfix
Moin,
ich habe meine Seite seit einiger Zeit auf Wordpress umgestellt. Grundsätzlich funktioniert auch alles super, nur ein leidiges Problem habe ich: Wenn man auf die Beitragsseite geht, lädt die Seite erheblich länger als die anderen. Hier mal meine durchschnittlichen Ladezeiten:
Startseite: ~ 1-2 Sekunden
htpasswd-Generator: ~ 1-2 Sekunden
Impressum: ~ 1-2 Sekunden
/blog: ~ 22 Sekunden <- zu lang
/blog/page/2 ~ 2-3 Sekunden
Ich habe das alles auch in unterschiedlichen Browsern probiert – immer das selbe Ergebnis. Sehr außergewöhnlich ist meines Erachtens, dass wirklich nur die erste Blog-Seite so lange lädt. Bei den anderen gehts gewohnt fix.
Ich hatte meinen Blog vorher bei Blogspot, und habe den erst im Nachhinein in das Wordpress importiert um ihn selbst hosten zu können. Deshalb dachte ich, es könnte an Bildern liegen, die noch bei Google gehostet sind, aber auf der ersten Seite sind nur Posts, die ich direkt im Wordpress geschrieben habe, wo also gar nicht auf Blogspot zugegriffen wird. Auch sind keine übergroßen Bilder vom eigenen Server auf der Seite, die die lange Ladezeit erklären würden.
Hat jemand eine Idee woran das liegen könnte oder wie ich zumindest das Problem eingrenzen kann? Ich habe schon die Datenbank geprüft (Abfragen auf die ersten 10 und die nächsten 10 Posts gemacht), aber dort sind keine entsprechenden Unterschiede in der Zeit festzustellen. Was könnte noch die Ursache dafür sein?
Grüße Marco
schalt mal den Firebug ein
curl 'http://themes.googleusercontent.com/static/fonts/lato/v7/BVtM30trf7q_jfqYeHfjtA.woff' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' -H 'Accept-Encoding: gzip, deflate' -H 'Accept-Language: de,en-US;q=0.7,en;q=0.3' -H 'Cache-Control: no-cache' -H 'Connection: keep-alive' -H 'Host: themes.googleusercontent.com' -H 'Origin: http://wp.misterunknown.de' -H 'Pragma: no-cache' -H 'Referer: http://fonts.googleapis.com/css?family=Lato%3A300%2C400%2C700%2C900%2C300italic%2C400italic%2C700italic' -H 'User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:28.0) Gecko/20100101 Firefox/28.0'
dauert 26s
Moin,
schalt mal den Firebug ein
[...]
dauert 26s
Tatsächlich? Wo genau sieht man das? Müsste das aber bei den anderen Seiten nicht auch so sein? Also beispielsweise auf der Blog-Seite 2? Denn obwohl es gecached werden könnte, lädt die erste Blog-Seite auch nach dem 5. Mal nachladen noch so lange...
Ich hab den Firebug mal an gemacht. Gesehen habe ich dabei nur, dass offensichtlich die erste Antwort des Skriptes 22 Sekunden dauert:
Das Nachladen weiterer Ressourcen ist dann eine Sache von einigen Millisekunden. Offensichtlich scheint also das PHP-Skript im Hintergrund gerade bei dieser Seite lange zu brauchen. Gibt es eine Möglichkeit zu serverseitig zu testen was in der Zeit so gemacht wird?
Grüße Marco
Länger warten und dann nach unten scrollen. Da steht auch was von 'Pragma: no-cache', evntl. sieht WP eine Möglichkeit vor, dass zu ändern.
Das Nachladen weiterer Ressourcen ist dann eine Sache von einigen Millisekunden. Offensichtlich scheint also das PHP-Skript im Hintergrund gerade bei dieser Seite lange zu brauchen. Gibt es eine Möglichkeit zu serverseitig zu testen was in der Zeit so gemacht wird?
Alle Requests, wo Firebug auflistet, macht der Browser. Hier würde ich zuerst aufräumen ;)
Moin,
Ich hab den Firebug mal an gemacht. Gesehen habe ich dabei nur, dass offensichtlich die erste Antwort des Skriptes 22 Sekunden dauert:
Das Nachladen weiterer Ressourcen ist dann eine Sache von einigen Millisekunden.
Das spricht imho dafür, dass der Server ansich sehr flott ist.
Offensichtlich scheint also das PHP-Skript im Hintergrund gerade bei dieser Seite lange zu brauchen. Gibt es eine Möglichkeit zu serverseitig zu testen was in der Zeit so gemacht wird?
Bei WP kann es in erster Linie auch am MySQL Server liegen.
Bau' dir mal eine entsprechende "Zeitmessung" zu Testzwecken ein (Anleitungen solltest du per Google reichlich finden).
Also sowohl für die PHP Skripte, als auch die DB Abfragen.
Dann sollte erkennbar werden, wer oder was da so lange braucht/ dauert.
Gruß Gunther
Moin,
Bei WP kann es in erster Linie auch am MySQL Server liegen.
Hab ich auch vermutet. Ich habe deshalb in der MySQL-Config eingestellt, dass Anfragen, die länger als eine Sekunde dauern, geloggt werden. Dann hab ich nochmal alles ausprobiert, und geguckt, ob in der Log-Datei etwas steht – dem war aber nicht so. Dann habe ich selbst mal eine eine Abfrage gemacht, die länger gedauert hat, und diese wurde geloggt. Deshalb gehe ich mal davon aus, dass es nicht am MySQL-Server liegt.
Also sowohl für die PHP Skripte, als auch die DB Abfragen.
Dann sollte erkennbar werden, wer oder was da so lange braucht/ dauert.
Ich hatte jetzt einfach mal aus "Spaß" alle Beiträge der ersten Blog-Seite durchgeklickt. Alle laden in normaler Zeit, bis auf diesen hier: C#: Netzlaufwerke mappen. Da die Zeit ungefähr gleich ist, würde ich vermuten, dass dieser Beitrag auch der Auslöser für das lange Laden der Blog-Seite ist. Warum das so ist, ist mir allerdings schleierhaft. Ich habe mal eine Abfrage zu dem Post in MySQL gemacht und die Zeit war zu vergessen (wenige Millisekunden). Der zurückgegebene Datensatz ist ~20KB groß – auch nicht ungewöhnlich. Ich habe andere Posts, die ähnlich groß sind.
Grüße Marco
Moin,
das Problem lag an einem bestimmten Post (hier die Originalversion). Offensichtlich ist entweder mein Syntax-Highlighter (Crayon) ineffizient oder man sollte eben nicht ganze C#-Klassen in einen Beitrag schreiben. Ich habe jetzt den Beitrag so bearbeitet, dass der Code nicht angezeigt wird, sondern nur noch heruntergeladen werden kann.
Problem war wohl das serverseitige Bearbeiten des Codes. Das Plugin hat den Code nicht erst beim Client analysiert (wie ich gedacht hätte), sondern schon auf dem Server aufgearbeitet. Das hat offensichtlich so lange gedauert.
Grüße Marco
Tach!
Problem war wohl das serverseitige Bearbeiten des Codes. Das Plugin hat den Code nicht erst beim Client analysiert (wie ich gedacht hätte), sondern schon auf dem Server aufgearbeitet. Das hat offensichtlich so lange gedauert.
Für Wordpress gibt es Cache-Module, da muss die Seite nicht jedes Mal neu erstellt werden.
dedlfix.