Aus Linux-Magazin 12/2006

Anleitungen und Tipps zum Performance-Tuning

Anders als der PS-Kick auf der Straße gilt auf Geschwindigkeit optimierte Linux-Software als ökonomisch und ökologisch korrekt. Statt ziellos mit Hardware um sich zu werfen, ist es besser, nach Schwergängigkeiten im Getriebe der Systeme zu fahnden. Diese Aufgabe trifft Server-Admins ebenso wie jeden Entwickler.

Inhalt

38 | 44 Server-Gebote Fünf Experten geben Tipps und Ratschläge, wie Mail-, Web-, Datenbank- und Fileserver flotter funktionieren.

46 | Benchmark-Fallen Trau keinem Datenblatt – nur verlässliche Benchmarks und Messung sagen wirklich, was ein Produkt leistet.

50 | Mailserver mit Postal messen Die Geschwindigkeit eines Mailservers zu bewerten setzt einen guten Last-Generator voraus. Postal mailt wie ein Weltmeister und misst dabei.

56 | Intel Vtune Der Prozessorhersteller weiß, wie Programme auf seinen CPUs schneller laufen. Dieses Know-how hat Intel in sein Analysetool Vtune integriert.

64 | Python-Skripte Viele Programme sind in Skriptsprachen entwickelt, daher gerät das Optimieren dieser Software zur Pflicht.

70 | Schneller suchen Hier hüpft der Linux-Kernel durch bunte Bäume: Die so genannten Red-Black-Trees beschleunigen die Suche nach einem Element in geordneten Daten.

Wie sehr sich manchmal Methoden, die Performance eines Systems zu erhöhen, widersprechen, das zeigte sich beim Zusammenstellen des ersten Artikels für diesen Heftschwerpunkt: Während einer der Autoren empfahl, ausführliches Logging zu aktivieren, riet ein anderer: abschalten! Beide haben Recht: Erst die Analysedaten aus dem Log enttarnen manchen Engpass. Leider raubt das Logging aber Zeit, schließlich schreibt es Daten auf die Festplatte.

Läuft der Server stabil und sind keine anderen Bremsen auszumachen, wirkt der Verzicht auf Logging vielfach Wunder. Hier gilt es abzuwägen, wie viel Logging nötig und sinnvoll ist. Doch Vorsicht: Wer wenig protokolliert, hat im Fehlerfall oder nach einem Einbruch auch nichts in der Hand, um den Schuldigen auszumachen.

Genauere Erkenntnisse über verborgene Pferdestärken und angezogene Handbremsen liefert ein virtueller Prüfstand. Dessen Benchmarks sind Fluch und Segen zugleich: Der beliebte Messtechniker-Spruch “Wer viel misst, misst Mist” gilt auch in der IT. Dennoch sind Messungen unverzichtbar. Die Datenblätter der Hersteller taugen nicht als Ersatz, zu oft enthalten sie Halbwahrheiten, sie lügen oder verschweigen wichtige Details. Einige dieser Kuriositäten listet der Artikel ab Seite 46 auf und warnt zugleich davor, die Öffentlichkeit vorschnell über Abweichungen zu informieren. Gemeinerweise verbieten es die Lizenzbedingen mancher Produkte, unbequeme Benchmarks zu publizieren.

Die Post ist da

Zu den schwer messbaren Server-Diensten gehört der MTA (Mail Transfer Agent). Anders als bei Web- oder Fileservern fehlt ein direktes Feedback, anhand dessen jeder Benutzer sieht, wie flott der Dienst agiert. Postal (Seite 50) begegnet dem mit der Macht der Masse: Es liefert regelgesteuert genau so viel Post beim Mailserver ab, wie dieser anzunehmen vermag. Dabei führt es Buch über die Anzahl der Mails, deren Größe sowie die beobachteten Fehler. Diese Daten nutzen jedem Hobby- und Berufsschrauber, um den Erfolg einer Optimierungsmaßnahmen zu kontrollieren.

Neben Admins stehen auch Entwickler vor der Aufgabe, sich um Geschwindigkeit und Sparsamkeit ihrer Programme zu kümmern. Unterstützung naht aus der Sensorik der CPU und vom Prozessorhersteller: Erstere sammelt Daten darüber, welche Operationen wie schnell abliefen, der zweite sorgt mit seinem Vtune-Werkzeug dafür, dass die Entwickler die Zusammenhänge mit ihrem Code erkennen (Seite 56).

Der Artikel ab Seite 64 erklärt, wie Python-Programmierer nach optimierungswürdigen Codestellen fahnden und ihr Skript mit wenig Aufwand beschleunigen. Das vorgestellte systematische Vorgehen gilt für jede Sprache.

Turbolader

Die Motorentechnik kennt Turbolader als schwer beherrschbare, aber hoch wirksame Technik für mehr Leistung bei gleichem Hubraum. Eine ähnliche Rolle spielen Red-Black-Trees im Kernel und in anderer Software, die große Datenmengen schnell durchsuchen muss. Die farbigen Bäume sind schwer zu implementieren, aber unglaublich schnell. Wie sie funktionieren und wem sie helfen, erklärt der Beitrag ab Seite 70.

Copyright © 2002 Linux New Media AG

LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben