Apache gehört zu den meist genutzten Webservern im Internet. Der modulare Aufbau erlaubt verschiedene Einsatzgebiete: Als Proxy-Server, zur Einrichtung einer Verschlüsselung für die Kommunikation zwischen Browser und Webserver oder auch zur Manipulation von HTTP-Kopfdaten sowie URLs. [...]
„Der Apache Webserver erhält erst durch seine vielen verschiedenen Module seine bekannten Funktionen. Auf Wunsch integriert Apache ja auch noch viele weitere Module von Drittanbietern. Serverbetreiber sollten dabei stets im Hinterkopf haben, dass die Zahl der genutzten Module zu Lasten der Speicherauslastung geht“, macht Christian Heutger, Geschäftsführer der PSW GROUP aufmerksam. Der IT-Sicherheitsexperte rät deshalb Apache-Serverbetreibern sowohl aus Performance- als auch aus Sicherheitssicht, nicht benötige Module zu deaktivieren. Dadurch seien zwar nicht gleich Performance-Wunder zu erwarten. Wer jedoch zusätzlich an weiteren Stellschrauben dreht, kann noch einiges an Leistung aus seinem Server herausholen.
„Eine pauschale Antwort auf die Frage, welche Module deaktiviert werden können, gibt es nicht. Zwei Ansätze können jedoch helfen, diese herauszufinden. So hat die Apache Software Foundation auf ihrer Website beispielsweise eine Dokumentation aller Module veröffentlicht. Anhand derer können Serverbetreiber Modul für Modul prüfen, ob es überhaupt genutzt wird. Alternativ betrachten Serverbetreiber die Anforderungen an ihren individuellen Server und suchen die Module dementsprechend aus“, gibt Christian Heutger einen Tipp und rät: „Da die Module sehr vielfältig sind, ist das Durchgehen der Dokumentation insbesondere für noch nicht allzu versierte User empfehlenswert.“
Performancebremsen ausschalten
Um weitere Performance-Steigerungen zu erreichen, sollten es Apache-Betreiber mit den Befehlen „top“, „iotop“ und „iostat“ versuchen. Während sich mithilfe des Befehls „top“ Systembremsen schnell ausfindig machen und sich beispielsweise die Priorität laufender Prozesse ändern lassen, eignet sich der Befehl „iotop“ um etwas über Festplattenzugriffe herauszufinden. „Mit diesem Befehl sind sämtliche Lese- und Schreibraten, aber auch die Raten der einzelnen Prozesse zu sehen. In diesem Zusammenhang ist auch iotop -o ein praktischer Befehl, da er ausschließlich IO-aktive Prozesse ausgibt,“ so Heutger. Zu guter Letzt zeigt der Befehl iostat ohne weitere Parameter die Anzahl der gelesenen und geschriebenen Blöcke seit Systemstart an.
Noch mehr Performancebremsen lassen sich mithilfe der Befehle „iftop“, mit dem sich die Auslastung des Netzwerks darstellen lässt, und „isof“ finden. Mit letzterem lassen sich offene Dateien ausgeben, die die Geschwindigkeit drücken. Wer die RAM-Auslastung sowie CPU-Load auf einem Blick betrachten möchte, ist mit dem Befehl „htop“ gut bedient. Er fungiert wie ein Task-Manager für die Linux-Shell. Einen Extra-Tipp hat Christian Heutger noch: „Mittels „renice“ lassen sich Prozessprioritäten festlegen. Sämtliche Prozesse haben in der Unix-Welt sogenannte Nice-Werte. Dieser Nice-Wert verrät die Priorität eines Prozesses – und diese Priorität bestimmt das Recht eines Prozesses auf die Prozessorzeit. Je höher also der Nice-Wert ist, umso umfassender darf der Prozess die CPU-Leistung nutzen. Der Nice-Wert des ausgewählten Prozesses kann mit den Tasten F7 und F8 angepasst werden.
Weitere Informationen finden sich im PSW-GROUP-Blog.
Be the first to comment