Optimale Java-Performance durch einfaches Design und klare Logik

Ein besonders interessanter Aspekt der Optimierung liegt in der Verwendung von Optimierungstools. Diese Tools werden oft erst so spät im Prozess eingesetzt, dass es extrem schwierig ist, etwaige Fehler auszubessern. Außerdem sind die meisten dieser Tools für meinen Geschmack zu kompliziert. Viele der angezeigten Berichte wirken geradezu erschreckend komplex. Ich will jedoch nur, dass das Tool mir sagt, was wirklich kaputt ist und wie ich es reparieren kann. Stattdessen zeigen diese Tools unzählige andere Dinge auf.

Wer ein solches Tool einsetzen will, sollte dies noch während der Entwicklung und Testphase tun, so dass man noch eingreifen kann, falls das Tool Elemente findet, die zu viel Zeit oder Ressourcen verbrauchen. In dieser Hinsicht können IDEs wie Oracle9i JDeveloper mit integrierten Tools zur Performance-Überwachung recht brauchbar sein.

Da Java Virtual Machines immer intelligenter und schneller werden, ist die Optimierung bei Java nicht mehr ganz so wichtig wie noch vor ein paar Jahren. Der Rückgriff auf einfache Java-Verbesserungen bringt daher nicht allzu viel. Wenn also die Verwendung der String-Klasse statt der StringBuffer-Klasse den Code lesbarer und leichter verständlich macht, sollte man String benutzen. Ein signifikanter Unterschied in der Performance dieser beiden Klassen wird nur dann feststellbar sein, wenn dieser Codeblock mehrere tausend Mal verwendet wird. Ist das in Ihrer Anwendung wirklich der Fall?

Optimierungs-Tricks

Hier einige Tricks zur Optimierung, die am ehesten einen unmittelbaren Erfolg versprechen:

  1. Datenbank-Zugriffe minimieren.
  2. Java-IO minimieren (z.B. das Lesen und Schreiben von Dateien).
  3. Daten, die nur gelesen werden, nach Möglichkeit immer zwischenspeichern.
  4. Wenn es nicht auf Abwärtskompatibilität ankommt, sollte man die aktuellste JDK-Version verwenden. JDK 1.4 brachte eine Menge Performance-Optimierungen gegenüber früheren Versionen mit sich, wobei diese Verbesserungen sich in zukünftigen Versionen fortsetzen dürften.
  5. Man sollte seine Anwendung nicht nur mit der JVM von Sun testen, sondern auch mit anderen JVMs.
  6. Performance-Probleme sollten immer als schwerwiegender Fehler (Bug) behandelt werden. Dadurch werden die Entwickler am ehesten dazu angehalten, etwas zu unternehmen, denn Bugs werden in der Regel immer verfolgt, wodurch auch der Entwicklerstolz zu einem Faktor wird.

Vereinfachen

Insgesamt ist seit dem Aufkommen von J2EE und verteilten Anwendungen das grundsätzliche Performance-Tuning in Java längst kein so großes Hindernis mehr wie noch vor ein paar Jahren. Man sollte sich also von alten Vorstellungen und Vorurteilen lösen und vor allem Wert auf einfaches Design legen, die Programmlogik gut durchdenken und sauberen, einfach zu pflegenden Code schreiben.

Page: 1 2

ZDNet.de Redaktion

Recent Posts

Bund meldet Fortschritte in der Netzversorgung

Die Bundesnetzagentur hat ihr Gigabit-Grundbuch aktualisiert. Drei von vier Haushalten sollen jetzt Zugang zu Breitbandanschlüssen…

3 Tagen ago

Vorinstallierte Schadsoftware auf IoT-Geräten

Mit dem Internet verbundene Digitale Bilderrahmen oder Mediaplayer können mit Schadsoftware infiziert werden und sind…

6 Tagen ago

iOS und iPadOS 18.2 beseitigen 21 Sicherheitslücken

Schädliche Apps können unter Umständen einen Systemabsturz auslösen. Mindestens eine Anfälligkeit erlaubt eine Remotecodeausführung.

7 Tagen ago

Top-Malware im November: Infostealer Formbook bleibt Nummer 1

Sein Anteil an allen Infektionen steigt in Deutschland auf 18,5 Prozent. Das Botnet Androxgh0st integriert…

7 Tagen ago

Google schließt schwerwiegende Sicherheitslücken in Chrome

Betroffen sind Chrome 131 und früher für Windows, macOS und Linux. Angreifer können unter Umständen…

7 Tagen ago

Data Analytics: Dienstleister wachsen zweistellig

Marktforscher Lündendonk erwartet für das Jahr 2025 ein durchschnittliches Umsatzwachstum von 14,9 Prozent.

1 Woche ago