Abo
  • Services:
Anzeige

MXHR - Webseiten in einem Rutsch laden

Digg-Entwickler veröffentlichen DUI.Stream im Alphastadium

Das Entwicklerteam hinter Digg.com hat eine Technik entwickelt, die das Laden von komplexen Webseiten mit vielen Elementen beschleunigen soll. Mit DUI.Stream haben sie eine Erweiterung für den Multipart XMLHttpRequests (MXHR) genannten Ansatz in einer frühen Version veröffentlicht.

Je weniger HTTP-Anfragen eine Website bei sonst gleichen Parametern benötigt, desto schneller wird sie vom Browser geladen. Wer seine Webseiten also schneller machen will, sollte unter anderem die Zahl der HTTP-Aufrufe reduzieren, empfiehlt unter anderem Steve Souders, Yahoos Performance-Chef und Autor des Buches High Performance Web Sites.

Anzeige

Das lässt sich beispielsweise durch die Zusammenführung von verschiedenen JavaScript- und CSS-Dateien in jeweils einer Datei erreichen, die gegebenenfalls für den jeweiligen Zweck automatisch zusammengestellt wird. Statt vieler Einzelbilder empfiehlt es sich zudem, sogenannte CSS-Sprites zu nutzen. Dabei werden die auf einer Webseite benutzten Hintergrundbilder in einer Datei zusammengefasst und via CSS der jeweils gewünschte Ausschnitt angezeigt. Zwar ist diese Datei dann vergleichsweise groß, aber der Browser muss sie nur einmal laden und auch nur einmal im Speicher halten.

Die Digg-Entwickler treiben diese Idee nun einen Schritt weiter und haben mit MXHR (Multipart XMLHttpRequests) einen allgemeinen Ansatz entwickelt, um mehrere Dateien mit einer HTTP-Request zu übertragen und im Browser wieder auseinanderzunehmen. Die Idee setzten die Digg-Entwickler in einer DUI.Stream genannten Erweiterung ihrer User-Interface-Bibliothek um.

DUI.Stream liest Multipart-HTTP-Requests Stück für Stück über einen XMLHttpRequest ein und reicht die einzelnen Bestandteile an einen JavaScript-Handler weiter. Auf diese Weise soll sich das Laden von ungecachten Seiten deutlich steigern lassen. Da die einzelnen Teile, direkt nachdem sie geladen wurden, ins DOM eingefügt werden, ergibt sich durch die Bündelung keine nennenswerte Verzögerung und Entwickler haben zugleich den Vorteil, bestimmen zu können, in welcher Reihenfolge die einzelnen Elemente einer Seite geladen werden.

Digg erhofft sich Vorteile bei großen Seiten mit vielen Kommentaren und zugehörigen Userbildern. Noch befinde sich DUI-Stream aber im Alphastadium. Das Ganze sei mehr als ein Proof-of-Concept, aber noch weit davon entfernt, produktiv eingesetzt werden zu können.

Digg hat je eine Demo von DUI.Stream mit zehn Textblöcken und 300 Bildern veröffentlicht, die zeigt, wie sich der MXHR-Ansatz auswirkt. Bei uns waren die MXHR-Versionen in Safari jeweils rund 1/3 schneller geladen, in Firefox lief die MXHR-Bilder-Demo fast fünfmal schneller, während das Laden der zehn Textblöcke auf herkömmlichem Wege nur halb so lang brauchte wie die MXHR-Version. Im Internet Explorer soll das Ganze derzeit nicht besonders gut funktionieren.

Digg stellt den Code von DUI.Stream zusammen mit Demos in Python, Ruby, Perl und Java bei Github zur Verfügung. Details zur Implementierung gibt es in einem Blogeintrag von Micah Snyder.


eye home zur Startseite
IhrName9999 07. Mai 2009

WAS? Ein "Empfangspuffer" auf dem SERVER?? Nun, den gibt es wirklich - nennt sich...

harmless 23. Apr 2009

Die Bilder-Demo lädt 300 verschiedene (ungecachte) (Mini-)Bilder auf einer einzelnen...

Crass Spektakel 23. Apr 2009

Der Ansatz ist dabei viel, viel, viel zu kompliziert. Schon heute ist es möglich, Bilder...

@ 23. Apr 2009

k.T.

crash 23. Apr 2009

Die haben es geschafft multipart/mixed für den IE verständlich zu machen. Ich hatte mich...



Anzeige

Stellenmarkt
  1. BSH Hausgeräte GmbH, Traunreut
  2. PBM Personal Business Machine AG, Köln
  3. Bechtle Onsite Services GmbH, Neckarsulm
  4. A + F Automation + Fördertechnik GmbH, Kirchlengern


Anzeige
Hardware-Angebote

Folgen Sie uns
       


  1. Raumfahrt

    Falsch abgebogen wegen Eingabefehler

  2. Cloud

    AWS bringt den Appstore für Serverless-Software

  3. Free-to-Play-Strategie

    Total War Arena beginnt den Betabetrieb

  4. Funkchip

    US-Grenzbeamte können Pass-Signaturen nicht prüfen

  5. Telekom-Chef

    "Sorry! Da ist mir der Gaul durchgegangen"

  6. WD20SPZX

    Auch Western Digital bringt flache 2-TByte-HDD

  7. Metal Gear Survive im Test

    Himmelfahrtskommando ohne Solid Snake

  8. Cloud IoT Core

    Googles Cloud verwaltet weltweit IoT-Anlagen

  9. Schweden

    Netzbetreiber bietet 10 GBit/s für 45 Euro

  10. Reverse Engineering

    Das Xiaomi-Ökosystem vom Hersteller befreien



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Materialforschung: Stanen - ein neues Wundermaterial?
Materialforschung
Stanen - ein neues Wundermaterial?
  1. Colorfab 3D-gedruckte Objekte erhalten neue Farbgestaltung
  2. Umwelt China baut 100-Meter-Turm für die Luftreinigung
  3. Crayfis Smartphones sollen kosmische Strahlung erfassen

Lebensmittel-Lieferservices: Für Berufstätige auf dem Lande oft "praktisch nicht nutzbar"
Lebensmittel-Lieferservices
Für Berufstätige auf dem Lande oft "praktisch nicht nutzbar"
  1. Kassenloser Supermarkt Technikfehler bei Amazon Go
  2. Amazon Go Kassenloser Supermarkt öffnet
  3. ThinQ LG fährt voll auf künstliche Intelligenz ab

Ryzen 5 2400G und Ryzen 3 2200G im Test: Raven Ridge rockt
Ryzen 5 2400G und Ryzen 3 2200G im Test
Raven Ridge rockt
  1. Smach Z PC-Handheld nutzt Ryzen V1000
  2. Ryzen V1000 und Epyc 3000 AMD bringt Zen-Architektur für den Embedded-Markt
  3. Raven Ridge AMD verschickt CPUs für UEFI-Update

  1. Re: Schuster, bleib bei deinem Leisten.

    bombinho | 02:56

  2. Re: Meine Ansicht zu dem Ganzen:

    tangonuevo | 02:48

  3. Re: maximaler Azimut ist minimale Inklination

    nkdvhn | 02:18

  4. Re: Ohne Smart Funktion ist für...

    LinuxMcBook | 02:13

  5. Re: Das sagt eine Schlange auch

    teenriot* | 02:03


  1. 17:17

  2. 16:50

  3. 16:05

  4. 15:45

  5. 15:24

  6. 14:47

  7. 14:10

  8. 13:49


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel