Die Geschwindigkeit einer Website ist einer der wichtigsten Faktoren sowohl in Bezug auf die Kundenerfahrung als auch auf die SEO-Förderung.
Laut zahlreicher Studien schließen mehr als 50% der Benutzer eine Webseite, wenn sie länger als 3 Sekunden zum Laden braucht. Dies verschlechtert nicht nur das Kundenerlebnis, sondern erhöht auch die Absprungrate und senkt die Position der Website in den Suchmaschinen-Rankings.
Darüber hinaus berücksichtigen viele Suchmaschinen inzwischen die Ladegeschwindigkeit der Web-Ressource und bevorzugen schnellere Webseiten.
Wir setzen uns auseinander, wovon die Geschwindigkeit von Webanwendungen abhängt und wie sie zu erhöhen ist.
Die Geschwindigkeit einer Website hängt von vielen verschiedenen Faktoren ab. In diesem Artikel werden wir die drei wichtigsten untersuchen:
Wenn wir auf eine Ressource zugreifen, sendet der Browser vor der Anzeige des Inhalts eine HTTP-Anfrage an den Server, und der Server sendet seine Antwort. Die Zeit zwischen dem Senden der Anfrage und dem Empfang der Antwort wird als Server-Antwortzeit bezeichnet.
Ein anderer Name dafür ist Zeit für den Empfang des ersten Bytes (Time To First Byte bzw. TTFB).
Aus Sicht des Clients ist dies die Zeit zwischen dem ersten Besuch der Ressource und dem Beginn des Ladens der Webseite.
Wovon die Antwortzeit des Servers abhängt:
Hier ist es ganz einfach: je schwerer Ihr Inhalt ist, desto länger dauert es, ihn zu laden. Deshalb gilt: je kleiner die Elemente Ihrer Web-Ressource sind, desto besser.
Aber hier ist es wichtig, ein Gleichgewicht zwischen Dateigröße und Qualität zu finden. Ein Bild, das ein paar Kilobytes wiegt, wird natürlich schneller geladen. Wenn es jedoch unscharf aussieht oder Elemente schwer zu unterscheiden sind, kann dies den Eindruck Ihrer Dienstleistung verderben und die Anzahl der Verkäufe verringern.
In Ihrer Webanwendung geht es um Bilder, Videos, Textinhalte, verschiedene Grafiken und so weiter. Wenn eine Ressource geladen wird, werden alle diese Elemente zusammengefügt und auf dem Bildschirm des Benutzers angezeigt. Dies wird als Rendern der Webseite bezeichnet.
Es ist in der Regel die Rendering-Geschwindigkeit der Webseite, die von verschiedenen Diensten zur Überprüfung der Ladegeschwindigkeit geprüft wird — zum Beispiel vom beliebten Page Speed Insight.
Wovon die Rendering-Geschwindigkeit einer Webseite abhängt:
Um den gewünschten Inhalt auf der Webseite anzuzeigen, ruft der Server die Datenbank auf, in der dieser Inhalt gespeichert ist. Wenn die Datenbank nicht optimiert ist, kann dies zu längeren Ladezeiten führen.
Dies gilt insbesondere für dynamische Inhalte (soziale Netzwerke, Foren, Empfehlungslisten von Online-Shops und alle anderen Inhalte, die nicht in einer vorgefertigten Form gespeichert sind und nach einer Anfrage erstellt werden). In diesem Fall ist es nicht nur notwendig, die Dateien „abzuholen“, sondern auch die Informationen zu generieren, die der Kunde sehen muss.
Die Erhöhung der Geschwindigkeit der Datenbank ist eine Aufgabe für erfahrene Programmierer. Die grundlegendsten Dinge, die zuerst getan werden müssen:
Je weiter der Server von den Benutzern entfernt ist, desto länger werden die Anfrage und die Antwort laufen. Wenn alle Ihre Kunden an einem Ort konzentriert sind, gibt es kein Problem — Sie kaufen einfach einen Server in der gleichen Gegend. Wenn zum Beispiel Ihr gesamtes Publikum in Luxemburg lebt, sollte Ihr Server auch in Luxemburg stehen.
Aber wenn wir über ein Online-Geschäft sprechen, ist es häufiger der Fall, dass Ihr Publikum über verschiedene Städte und Länder verstreut ist. Und es ist einfach nicht möglich, in jeder Stadt Server aufzustellen.
Dieses Problem wird durch CDN (Content Delivery Network) — Netzwerk zur Bereitstellung von Inhalten — gelöst. Es handelt sich um eine Reihe von miteinander verbundenen Servern (Präsenzpunkte, Points of Presence), die Informationen vom Origin-Server abrufen, zwischenlagern und den Benutzern zur Verfügung stellen.
CDN-Server befinden sich in der Regel so nah wie möglich an den Endbenutzern. Wenn also einer von ihnen Ihre Ressource besucht, geht die Anfrage nicht an den Origin-Server, sondern an den nächstgelegenen Präsenzpunkt. Der Anfrageweg wird verkürzt und die Antwortzeit des Servers reduziert.
Bei der Verwendung von CDN werden die Informationen nach der ersten Anfrage an den Präsenzpunkten zwischengespeichert:
CDN beeinflusst nicht nur die Antwortzeit des Servers, sondern auch seine Fehlertoleranz. Bei hohem Verkehrsaufkommen werden die Anfragen gleichmäßig auf die nächstgelegenen Server verteilt, anstatt alle auf einmal an die Origin gehen. Dies hilft, die Last auszugleichen und macht die Ressource stabiler.
Wenn Sie ein globales Projekt haben, muss das CDN wirklich global sein, damit die Webseite schnell funktionieren. Achten Sie auf die Anzahl der Präsenzpunkte und deren Lage. Zunächst einmal müssen sie dort sein, wo Ihre Kunden leben. Und je mehr davon, desto geringer ist die Reaktionszeit und desto stabiler ist das System.
G-Core Labs CDN hat mehr als 80 Präsenzpunkte auf allen Kontinenten außer der Antarktis. Dank unserer hervorragenden Abdeckung erreichen wir eine weltweite durchschnittliche Reaktionszeit von rund 30 ms. Die Gesamtnetzkapazität beträgt bereits mehr als 50 Tbit/s.
Ein leistungsfähiges, weltweit verteiltes CDN kann die Server-Antwortzeit deutlich reduzieren. Aber seien Sie sich bewusst, dass dies nur hilft, wenn Ihre Clients tatsächlich weit vom Server entfernt wohnen. Wenn dies nicht der Fall ist und die Antwortzeit des Servers zu wünschen übriglässt, liegt das Problem woanders, und ein CDN wird die Situation nicht retten.
Um die Belastung zu reduzieren, können Sie als erstes versuchen, die Anzahl der Anfragen zu verringern.
Wenn eine Website geladen wird, stellt der Browser Anfragen für jedes Element der Website. Wenn wir also die Anzahl dieser Elemente reduzieren, reduzieren wir die Anzahl der Anfragen.
Um dies zu tun, hat sich das Aussehen der Webseite nicht geändert, Sie können Folgendes tun:
CSS-Sprites können in einigen Fällen sogar die Größe von Bildern reduzieren und das Laden von Inhalten beschleunigen. Inline-Bilder erhöhen jedoch die Größe der HTML-Datei. Auch kombinierte Dateien sind groß. Dies ist also ein zweischneidiges Schwert: Sie reduzieren die Anzahl der Anfragen und die Antwortzeit des Servers, aber Sie machen auch den Inhalt schwerer.
Wenn Sie viele schwere Dateien haben, wird das Zusammenführen die Last verringern, aber es wird die Ressource nicht wesentlich beschleunigen.
Eine andere, effektivere Möglichkeit, die Last auf Ihrem Server zu reduzieren, ist die Aktivierung von Origin-Shielding. Dies ist ein zusätzlicher vorgespeicherter Server, der sich zwischen den Origin- und Präsenzpunkten befindet.
Die Hauptfunktion von Shielding ist es, Ihren Server vor zu vielen Anfragen zu schützen. Alle Anfragen von CDN-Servern kommen zuerst zum Shielding und gehen erst dann zur Origin. Es stellt sich heraus, dass dieser nur mit einem Pre-Server kommuniziert, und nicht mit dem gesamten Netzwerk.
Die Anzahl der Anfragen wird reduziert, sie werden schneller verarbeitet, und die Antwortzeit des Servers wird verringert.
Source Shielding wird von vielen fortschrittlichen CDN-Providern angeboten. G-Core Labs CDN hat es auch.
Um eine Anfrage an den Server zu senden, auf dem sich Ihre Ressource befindet, muss der Browser zunächst dessen IP-Adresse ermitteln. Auf DNS-Servern werden Informationen über Domain-Namen und die zugehörigen IP-Adressen gespeichert.
Es stellt sich heraus, dass der Browser, bevor er eine Anfrage an einen Server sendet, zunächst eine Anfrage an einen DNS-Server sendet, um die benötigte IP herauszufinden. Wie das alles funktioniert, können Sie in unserem Artikel „DNS-Server“ nachlesen: Was ist es und wie funktioniert es?".
Je weiter der DNS-Server, der Ihre Domain-Namen hostet, von Ihren Benutzern und deren IP entfernt ist, desto länger dauert die Anfrage. Und folglich wird die Antwortzeit des Servers länger.
Wie ist hier am besten vorzugehen? Platzieren Sie Ihre Domain-Namen auf den DNS-Servern so nah wie möglich bei Ihren Kunden. Und wählen Sie ein zuverlässiges DNS-Hosting mit mehreren Standorten und Lastausgleichsmöglichkeiten.
Wenn Sie alles versucht haben und die Antwortzeit des Servers immer noch zu wünschen übrig lässt, könnte es am Server selbst liegen. Der Server selbst ist möglicherweise nicht in der Lage, die Last zu bewältigen, und Sie benötigen mehr Rechenleistung.
Berechnen Sie, wie viel Festplattenspeicher und RAM für den normalen Betrieb Ihrer Ressource erforderlich ist und ob der Server diese Parameter erfüllt.
Wenn nicht, wechseln Sie Ihren Tarif für Hosting auf ein leistungsfähigeres oder wechseln Sie zu einem anderen Anbieter.
Und wenn Ihr Projekt zu einem wirklich großen Ausmaß angewachsen ist, reichen die Ressourcen des konventionellen Hostings vielleicht nicht mehr aus und es ist an der Zeit, in die Cloud zu migrieren. Die Unterschiede zwischen diesen beiden Diensten können Sie in unserem Artikel „Cloud oder Hosting: Was sollten Sie wählen?“.
Je geringer das Gewicht der Elemente Ihrer Anwendung ist, desto schneller wird sie geladen. Um eine schnellere Ressource zu erreichen, müssen Sie die Größe aller Dateien, aus denen sie besteht, so weit wie möglich reduzieren.
Aber bei dieser Verkleinerung darf die Qualität nicht stark beeinträchtigt werden.
Um schnellere Downloads bei gleichbleibend hoher Qualität der Inhalte zu erreichen, werden fortschrittliche Kompressionsalgorithmen wie Gzip, Brotli und WebP verwendet.
Dies sind verlustfreie Komprimierungsalgorithmen. Sie reduzieren die Größe von Elementen erheblich, ohne ihr Aussehen in irgendeiner Weise zu verändern. Die Algorithmen können Dateien „im Fluge“ komprimieren, d.h. direkt im Prozess der Freigabe von Inhalten für Benutzer.
Gzip kann nur Textelemente komprimieren. Der Algorithmus findet identische Zeilen in der Datei und führt sie zusammen. Dadurch wird die Webseite um 60–70% verkleinert.
Brotli arbeitet mit beliebigen Inhalten. Es verwendet ein Wörterbuch, das bereits in den Browsern der Benutzer eingebaut ist. Dieses Wörterbuch speichert fast 100.000 Phrasen und Fragmente, die am häufigsten im Internet vorkommen. Der Algorithmus berechnet die neuen Fragmente in den Dateien und gibt nur diese weiter, alles andere wird durch Elemente aus dem Wörterbuch ersetzt.
Diese Technologie komprimiert Inhalte 20–25% effizienter als Gzip.
WebP ist ein Algorithmus zur Komprimierung von Bildern. Es wird jetzt als effektives Analogon von PNG und JPEG verwendet. WebP komprimiert verlustfreie Bilder 26% besser als PNG und 25–34% effizienter als JPEG.
Die Komprimierung wird in zwei Schritten durchgeführt:
Alle drei Algorithmen werden von allen gängigen Browsern unterstützt. Ihre Verwendung ist eine gute Möglichkeit, die Ladezeit zu reduzieren.
G-Core Labs CDN unterstützt nicht nur diese Algorithmen, sondern komprimiert auch Dateien. Gzip läuft auf Servern, während Brotli auf der Quelldatei läuft. Das bedeutet, dass Sie die Komprimierung nicht konfigurieren und den Code auf Ihrer Webseite schreiben müssen. Sie können Ihre Quellen hochladen, und die Inhalte werden bei der Auslieferung automatisch komprimiert.
1. Platzieren Sie jаvascript-Dateien am Ende der Webseite. Wir haben bereits erwähnt, dass beim Laden einer Webseite die wichtigsten Elemente zuerst geladen werden sollten. Nun, JS-Dateien sind keine wichtigen Elemente.
Der Benutzer soll zuerst den Inhalt der Webseite sehen, bevor diese vollständig geladen ist. Und jаvascript-Dateien können eine ganze Menge wiegen. Stellen Sie also am besten sicher, dass sie zuletzt geladen werden.
2. Blenden Sie Elemente aus, die für die mobile Version der Webseite nicht benötigt werden. Viele Web-Ressourcen werden mittlerweile von Benutzern auf Smartphones aufgerufen. Mobile Geräte sind schwächer als Desktop-PCs. Und wenn dann noch ein instabiler mobiler Internetzugang hinzukommt, können die Ladezeiten sehr lang werden.
Um Benutzer nicht warten zu lassen, optimieren Sie die mobile Version Ihrer Website so weit wie möglich und entfernen Sie alles Unnötige, das sie verlangsamen könnte.
Testen Sie unser CDN und sehen Sie selbst, wie leistungsfähig und zuverlässig es ist. Oder beginnen Sie mit einer kostenlosen Beratung. Unsere Manager helfen Ihnen, den richtigen Tarif für Ihre Aufgaben auszuwählen.