Was sind die Unterschiede beim Laden einer Seite über ein CDN, und welche Arten von Anbietern nutzen Sie?
Bei der Nutzung eines CDNs habe ich deutlich längere Ladezeiten. Habe ich etwas falsch gemacht oder fehlt mir vielleicht noch eine Information? Sollte ich eventuell noch Einstellungen vornehmen, von denen ich nichts weiß?
Nun, der erste Hinweis … danke an .
Ein bisschen. Wie viel? Wir sprechen von Tagen, Wochen?
Sollten wir eine Nutzlast über HTTPS oder lieber über HTTP erzwingen? Ich frage, weil es Unterschiede beim Laden gibt. Wovon hängt es ab, ob die Seite vollständig geladen wird oder so aussieht, als hätte das ursprüngliche JavaScript nicht geladen?
Der Zeitrahmen hängt davon ab, wie die Benutzer mit der Website interagieren. Die am häufigsten heruntergeladenen Assets werden in den CDN-Cache geladen und sind schneller, wenn Sie näher am CDN-Server als am Ursprungsserver sind.
Wenn sich das Rechenzentrum in Ihrer Nähe befindet und der CDN-Server 1000 km entfernt ist, wird es immer langsamer sein. Die Idee hinter dem CDN besteht darin, ein geografisch vielfältiges Publikum besser zu bedienen, nicht zentralisierte Besuche zu verbessern.
TTFB für statische Assets (wie eine JS-Datei oder ein von einem Nutzer hochgeladenes JPG) ist bei Verwendung eines CDNs immer schnell, da die Latenz mehrerer PoPs dabei hilft.
TTFB für dynamische Routen ist hingegen nicht sinnvoll zu vergleichen, da unsere DISCOURSE_CDN_URL diese ohnehin nicht abdeckt.
Könntest du bitte genauer erklären, was du meinst?
Ich zeige die Ergebnisse für das Testforum. (Übrigens ist es gerade etwas schneller geworden) // Aber das gilt nur für eine frische Domain ohne Inhalte.
Was Sie sehen, ist lediglich eine normale Schwankung. Ein CDN hat keinen Einfluss auf die Time to First Byte (TTFB) im Root-Bereich Ihrer Discourse-Instanz oder auf anderen dynamischen Routen. Ein CDN bedient ausschließlich statische Assets.
Ich hatte gehofft, dass das CDN die Ladegeschwindigkeit der Seite beschleunigt, aber ich vermute, der Effekt wird vernachlässigbar sein.
Gibt es andere, deutlich effektivere Möglichkeiten, die Ladegeschwindigkeit der Seite für verschiedene Regionen der Welt zu verbessern, abgesehen von der Erhöhung der RAM- und CPU-Ressourcen?
TTFB ist die Zeit, die der Anwendungsserver benötigt, um eine 200-Antwort zu senden. Sie können es nicht mit einem CDN verbessern, da das CDN nur Assets bereitstellt.
Sie werden die Seite beschleunigen, aber nicht den First Byte. Das Laden von Multimedia-Inhalten (Bilder, PDFs, Videos) und JS wird schneller sein. Dies verbessert die Reaktionsfähigkeit der Seite, aber alle dynamischen Inhalte müssen weiterhin vom zentralen Server geladen werden.
So werden beispielsweise die Avatare der Benutzer schneller geladen, aber nicht die Titel der Themen.
Da Discourse das Rendern blockiert, bis JS und CSS geladen sind, wird die Seite durch die Nutzung eines CDNs dennoch schneller interaktiv.
Eine solche Analyse erfordert mehr als nur blindes Ausführen von Lighthouse und WebPageTest, das Auswählen eines Ergebnisses und die obsessive Fixierung darauf.
Wenn es Ihnen darum geht, eine Seite mit einer höheren Punktzahl in diesen Tools zu haben, empfehle ich die Verwendung eines Blogs, der mit Tools wie https://jekyllrb.com/ betrieben wird.