Open Source im professionellen Einsatz

Engine-Tuning

Natürlich haben die Firefox-Entwickler für die neue Major-Release nicht nur an der Oberfläche gefeilt. Die Rendering-Engine Gecko trägt nun die Versionsnummer 2.0. Die neue Javascript-Engine Jägermonkey [5] nutzt Teile aus der Webkit-Javascript-Engine Squirrelfish [6].

Sowohl der Sunspider-Test, Googles V8-Benchmark als auch Mozillas eigener Geschwindigkeitstest Kraken bescheinigen der neuen Engine eine um das Dreifache oder mehr gesteigerte Geschwindigkeit [7]. Doch messen alle drei Tests die reine Performance des Javascript-Interpreters. In der Praxis, insbesondere in Ajax-Anwendungen, dient Javascript aber in erster Linie dazu, den Inhalt einer Webseite anzupassen, wobei die Laufzeit des Javascript meist nur mit wenigen Prozent ins Gewicht fällt.

Für Ajax-Entwickler und -Anwender zählt viel mehr, wie lange die Rendering-Engine braucht, um per Javascript ausgeführte Änderungen auf einer Seite anzuzeigen. Daher untersucht ein Test (siehe Kasten "DOM-Manipulations-Benchmark"), wie lange es dauert, eine Tabelle von 100 mal 100 Zellen beziehungsweise 100 »div«-Tags einzufügen, die jeweils 100 »span«-Tags enthalten. Im Vergleich zu Firefox 3.6 macht Firefox 4.0 Beta 8 viel Boden gut und spielt nun in derselben Liga wie die schnellen Browser Chrome und Opera.

DOM-Manipulations-Benchmark

Das unter [11] verfügbare Javascript fügt in eine HTML-Seite eine Tabelle der Größe 100 mal 100 Pixel ein, zuerst Zelle für Zelle mit »appendChild()«, dann als mit String-Verkettung erstelltes HTML-Fragment per »innerHTML«. Der dritte Test schreibt 100 »div«-Tags in die Seite, die jeweils 100 »span«-Tags mit Text enthalten. Der Benchmark (Abbildung 3) lief auf einem Intel-i7-Rechner mit 3 GHz CPU-Takt. Anders als reine Javascript-Benchmarks gibt er einen Anhaltspunkt für die Browser-Performance in Ajax-Anwendungen.

Abbildung 3: Die drei Manipulationstests prüfen, wie lange ein Webbrowser benötigt, um den Seiteninhalt mit unterschiedlichen Javascript-Methoden zu verändern. Die Zeitangaben verwenden Millisekunden als Einheit, kürzere Balken stehen für raschere Abarbeitung.

Abbildung 3: Die drei Manipulationstests prüfen, wie lange ein Webbrowser benötigt, um den Seiteninhalt mit unterschiedlichen Javascript-Methoden zu verändern. Die Zeitangaben verwenden Millisekunden als Einheit, kürzere Balken stehen für raschere Abarbeitung.

Zukunftsmusik

Die Runderneuerung der Rendering-Engine in Firefox 4 schlägt sich außer beim Tempo auch in einer besseren HTML-5-Unterstützung nieder: Firefox kennt nun HTML-5-Videos im Web-M-Format [8], das dank Googles Rückendeckung als aussichtsreichster Ersatz für das proprietäre und fehlerträchtige Flash gilt. Wer noch nicht auf Flash verzichten kann, profitiert davon, dass ein Absturz des Flash-Plugins nicht länger den Browser mit in den Tod reißt.

Firefox 4 unterstützt SVG-Vektorgrafiken als Bilder und Hintergründe. Damit lassen sich Webseiten erstellen, die verlustfrei in der Größe skalieren. Auch die CSS3-Unterstützung verbessert Gecko 2.0, besonders effektvoll sind die CSS-Transitions [9], mit denen sich etwa animierte Menüs ohne Javascript realisieren lassen. Eine vollständige Übersicht über unterstützten Webtechnologien zeigt [10].

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 3 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook