Ich habe lange Zeit damit verbracht, mein CSS zu optimieren, Plugins zu entfernen, Weiterleitungen zu eliminieren – alles, was möglich ist, um die Ladezeiten zu verbessern. Offensichtlich sind die Hauptverursacher jedoch:
mobile_4-randomcharacters-.css, das normalize.css und Pikaday enthält und auf Mobilgeräten 1,5 Sekunden benötigt,
sowie /assets/ember_jquery-randomcharacter-.js, das auf Mobilgeräten 3,6 Sekunden zum Laden braucht.
Ich habe keine Ahnung, was ich mit diesen Dateien machen soll, die die längsten Ladezeiten aufweisen.
Das Laden auf dem Desktop ist zwar schneller, aber immer noch nicht gut.
Der Server verfügt über 1 CPU, 2 GB RAM, 50 GB SSD und 2 TB Bandbreite auf einem professionellen US-Server.
Es laufen zwei Unicorn-Worker; weder CPU noch RAM sind stark ausgelastet, und ich habe nicht viele Nutzer oder Plugins.
Irgendeine Idee? Danke.
Vielen Dank. Laut https://developers.google.com/speed/pagespeed/insights/ betrug die CPU-Zeit (nicht die Übertragungszeit) speziell für das zweite Asset fast 4 Sekunden. Wird ein CDN wie Fastly dies trotzdem verbessern? Ich nutze derzeit Cloudflare mit Caching. Gibt es eine Einstellung bei Cloudflare, die ich verwenden sollte, oder sollte ich einfach etwas wie Fastly darüber legen?
Das ist tatsächlich ein großer Vorteil, der Zeit benötigt, um analysiert und bewertet zu werden. Da Discourse eine „Single-Page-Applikation“ ist, werden diese Kosten vollständig beim ersten Besuch des Nutzers aufgewendet. Dies ist ein Kompromiss unseres Ansatzes, der darauf abzielt, alle nachfolgenden Interaktionen, die typisch für die Forennutzung sind, leichtgewichtig zu gestalten.
Es gibt Pläne, dass EmberJS die zwingende Abhängigkeit von JQuery abschaffen wird, was die Datenmenge erheblich reduzieren wird. Doch wir sind noch Jahre davon entfernt, diesen Übergang in Discourse umzusetzen.
Danke für die Antwort. Ich glaube, bei meiner Konfiguration muss etwas nicht stimmen, da ich noch nie von jemandem gehört habe, der solche Ladezeiten meldet.
Nun, die Pagespeed-Standards erzwingen ein Nexus 5X und eine 3G-Verbindung, was selbst für Brasilien (ein Entwicklungsland) heutzutage am unteren Ende liegt. Die tatsächliche Leistung hängt also davon ab.
In den Leistungsstatistiken des Servers ist praktisch keine Last zu sehen, doch die URL lädt ewig. Für einen nicht angemeldeten Besucher in einem Inkognito-Fenster habe ich 1,2 Minuten gemessen, obwohl einige Komponenten bereits im Cache waren. Die langsamsten waren die OpenSans-TTF-Schriftartdateien mit über einer Minute; danach dauerten mehrere .js-Komponenten 30 bis 45 Sekunden.
Ich werde mich mit Caching-Optionen befassen, aber angesichts dieser Komponenten glaube ich nicht, dass alle zwischengespeichert werden können. Insgesamt wurden nur 730 KB Daten übertragen. Wenn alle 3 vCPUs mit Volllast laufen würden, könnte ich überlegen, auf einen schnelleren Server umzusteigen, aber da selbst das kaum oder keine Last zeigt, bin ich einfach verwirrt.
Wartet etwas auf etwas anderes, bevor es fortfährt? Gibt es eine Möglichkeit, Tests auf dem Server auszuführen, um die Funktionsfähigkeit von Komponenten wie der Datenbank zu prüfen?
Könnte Docker die Geschwindigkeit beeinträchtigen?