V-Server macht bei größerer Besucherzahl schlapp

jackennils

New Member
Hallo miteinander.

Ich habe einen V-PowerServer XL von Strato. Darauf läuft eine Webseite deren Basis eine Wordpress Installation bildet und einen phpBB3 Forum. Die Webseite hat seit kurzem täglich um die 10.000 Besucher (http://mafia-daily.net/).

Sobald jedoch etwa 70 oder mehr Besucher gleichzeitig online sind, geht der Server tierisch in die Knie. Die Ladezeit der Hauptseite (WP) wird elendig lange. Serverauslastung in Plesk liegt dann bei 30% und RAM Ausnutzung bei 3GB und mehr.

Das Forum hingegen bleibt releativ gut erreichbar.

Daher vermute ich auf einen Ressourcenfresser unter den eingesetzten Wordpress Plugins.

Gibt es eine Möglichkeit mir anzeigen zu lassen, was wie viel Serverleistung frisst? Wenn ja, wie kann ich mir das anzeigen lassen?


Danke schon mal,
jackennils
 

satriani

Registered User
hallo,

nutzt du Firebug? Da du behauptest, dass ein Plugin Ärger macht, würde ich an deiner Stelle zu Firebug greifen und WordPress-Community ansprechen, ich denke das ist das falsche Forum hier.
Übrigens, dein Forum ist auch super langsam :rolleyes:
 

Trud

New Member
Versuch es mal mit top und poste die Ausgabe hier vielleicht ist ja dein vserver schon eine spam schleuder.

Kannst auch htop installieren ist auch gut

Plesk ist auch ein Ressource fresser wie wäre es den mit direkt admin oder einfach apache richtig konfiguriert frisst es so gut wie nichts.
 

jackennils

New Member
Habe das Problem ausfindig machen können.
Ein Plugin, das die aktuellen Forenbeiträge auf der Hauptseite ausgab, hat den MySQL Server komplett ausgelastet und somit alles extrem verlangsamt.

Plugin gelöscht, Problem gelöst.

Dennoch danke euch!
 

Slant

Blog Benutzer
Ich stand vor einer Weile vor dem gleichen Problem. Ich kann nur empfehlen w3 total cache zu installieren und einen opcode cache. Aber wie auch du schon erkannt hast die richtingen plugins machen auch viel aus.

Es geht dabei in erster linie darum auf plugins zu verzichten die während des renderns z.b. related posts oder andere inhalte aktiv berechnen. andere tun das im hintergrund und halten die daten bereit.

Opcode cache ... apc oder xcache lassen sich sehr leicht installieren und bringen eine menge.

Dazu w3 total cache, welches zum beispiel pages cached, .js .css zusammenfast und minified um requests zu verringern ... es aktiviert browser caching funktionen, opcode caching, database caching, compressed transfer ... und vor allem ein einfaches content delivery network ... es ist im moment die einzige all around lösung für wordpress.

Bei google webmasters is meine Time spent downloading a page (in milliseconds) von 5.6 sekunden auf 384 ms gefallen :D Die Seite ist jetzt aufgebaut bevor der Server vor 3 wochen geantwortet hätte :D

Hier aus der source mit vielen queries aus einer meiner seiten:

Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk
Page Caching using disk (enhanced)
Database Caching 12/18 queries in 0.019 seconds using apc
Object Caching 2240/2249 objects using apc
Content Delivery Network via static.myrddin.de

Served from: www.myrddin.de @ 2010-09-05 12:15:43
 

satriani

Registered User
Sorry Leute, aber das alles ist unnötiges Müll, das die Sicherheit eurer Server beeinträchtigt und die Ressourcen verbraucht. :rolleyes:
Die einzige Lösung ist genial und einfach, Apache ins Eimer werfen! Es gibt mittlerweile diverse sichere und viel schnellere Webserver als "Lahmarsch Apache", man soll bloß keine Angst haben vom Apache abzusteigen ;)

Gruß, satriani.
 

dev

Registered User
So ein Quatsch. Ein lighty oder nginx oder was weiss ich bringen die PHP- und Query-Last auch nicht runter. Wordpress mit vielen (schlecht programmierten) Plugins ist halt einfach ein Performancekiller auf Interpreter- und MySQL-Ebene.

Ein anderer Webserver ist ein Aspekt der Lösung, aber kein Universalmittel und einen Apache kann man auch schlank machen.
 

d4f

Müder Benutzer
Wordpress mit vielen (schlecht programmierten) Plugins ist halt einfach ein Performancekiller
Ich denk mal satriani ging davon aus dass Wordpress als vanilla im Betrieb ist ;)

Plesk ist bekanntermassen ein Ressourcenfresser. Ist er wirklich notwendig?

Ein lighty oder nginx oder was weiss ich bringen die PHP- und Query-Last auch nicht runter.
Nein, abe
Wordpress mit vielen (schlecht programmierten) Plugins ist halt einfach ein Performancekiller
Ich denk mal satriani ging davon aus dass Wordpress als vanilla im Betrieb ist ;)

Plesk ist bekanntermassen ein Ressourcenfresser. Ist er wirklich notwendig?

Ein lighty oder nginx oder was weiss ich bringen die PHP- und Query-Last auch nicht runter.
Nein, aber er belastet das System weniger weiter.
Wenn Apache 10% der CPU und PHP 90% belegt dann koennte PHP bei Lighy 99% belegen was 9% mehr SPielraum waere ;)
Von mehr freier RAM und Immunitaet gegen verschiedene DoS-Angriffe (Slowloris) mal abgesehen ;)

Ich bin mir nicht sicher ob Wordpress + Erweiterungen vollstaendig vom Coding-Styl und den benoetigten Funktionen kompatibel sind, aber eventuell koennte ein Kompilieren mittels HipHop in eine eigenstaendige Server-Binary die PHP-Last drastisch senken. (MySQL natuerlich nicht - dazu muessen Cacher und/oder bessere Querys her)
 

blafasel2

New Member
Ich denk mal satriani ging davon aus dass Wordpress als vanilla im Betrieb ist
Plesk ist bekanntermassen ein Ressourcenfresser. Ist er wirklich notwendig?
Was hat das denn mit PLESK zu tun? Aber PLESK frisst maximal ein wenig RAM und bläht die Konfiguration auf, wenn der OP sagt er hat 3GB RAM dann ist PLESK völlig egal.

Nein, aber er belastet das System weniger weiter.
Wenn Apache 10% der CPU und PHP 90% belegt dann koennte PHP bei Lighy 99% belegen was 9% mehr SPielraum waere
Von mehr freier RAM und Immunitaet gegen verschiedene DoS-Angriffe (Slowloris) mal abgesehen
Gut Slowloris ist ein legitimes Argument, aber für statische Seiten und "nur" 10.000 Zugriffe täglich machen nginx/lighttpd oder Apache keine Unterschied.

Pro Verbindung mag Apache mehr RAM fressen aber wenn du Wordpress am laufen hast, ist das auch vernachlässigbar.

Ich habe die Erfahrung gemacht, dass es nur wirklich hilft die SQL-Anfragen pro Seite zu reduzieren, da z.B. Ein kompletter Page-Cache dir auch nicht hilft, wenn 3-4 Spambots und 5 Suchmaschinen alle Posts abklappern...

Mit W3-Total-Cache und dem Wordpress-Widget-Cache kommt man da schon ein gutes Stück weiter. Vorallem der Widget-Cache ist wichtig, da sonst für jede neu erstelle Seite alle Widgets generiert werden, dass sind nicht wenige Datenbankabfragen für Inhalte die sich sowieso kaum ändern.

nginx hat allerdings ein großartiges Feature: fastcgi_cache (http://christian-beckmann.net/wordpress/wordpress-wordpress-mu-auf-nginx-mit-fastcgi_cache-und-permalinks/) das ist sozusagen der Pagecache von W3-Total-Cache auf Stereoiden.

Das beste Plugin um Wordpress schneller zu machen ist so ein SQL-Query Analyzer der einen Sagt welches Plugin, wo welche Queries macht.

Wenn man auf das Plugin nicht verzichten kann und ein wenig Zeit hat kann man sich mit wp_cache http://codex.wordpress.org/Function_Reference/WP_Cache auseinandersetzen und die Ergebnisse des Plugins für eine gewisse Zeit cachen, dass bringt oft mehr als einfach nur stur zu versuchen alles zu Cachen.

zu HipHop: Das unterstützt (soweit ich weiß) nur eine bestimmte Untermenge von PHP und hilft dir bei 200+ MySQL Queries pro Seite auch überhaupt nichts...

Was eventuell noch helfen könnte wäre anstatt MyISAM InnoDB für die MySQL Tabellen zu verwenden, vorallem wenn man viele Kommentare und eine sehr dynamische Seite hat, da MyISAM die ganze Tabelle beim schreiben sperrt und InnoDB nur die jeweilige Zelle, kann das etwas bringen.
 

Top