ASP-Webanwendung: Best Practice für die durchschnittliche Webseitengröße

ASP-Webanwendung: Best Practice für die durchschnittliche Webseitengröße

Habt ihr ein paar Best-Practice-Tipps zur Ausgabegröße von Webseiten? Je kleiner, desto besser natürlich. Ich spreche von nicht zwischengespeicherter Ausgabe. Ich würde lieber keine 1 MB großen Seiten zurückgeben.

Antwort1

Dies hängt von Ihrer Benutzerbasis und der Art ihrer Internetverbindungen ab. Bei Breitbandverbindungen sind die Renderzeit und die Anzahl der Objekte (und damit der HTTP-Anfragen) wahrscheinlich eher ein Engpass als das reine Datenvolumen, selbst mit Keepalives. Ein Benutzer mit einer 4-Mbit/s-Verbindung kann 1 MB Daten in zwei Sekunden herunterladen, aber es ist unwahrscheinlich, dass er 50 oder 100 einzelne Objekte herunterladen und komplexes JavaScript und CSS so schnell rendern kann.

Wenn Ihre Benutzer langsamere Verbindungen haben, ermitteln Sie die niedrigste Verbindungsgeschwindigkeit, die Sie unterstützen müssen, sowie die maximal zulässige Seitenladezeit und dimensionieren Sie Ihre Seiten entsprechend. Messen und überwachen Sie jedoch die Renderzeiten Ihrer Seiten (ich schlage vor, den Mittelwert, den Median und das 90. Perzentil zu betrachten).

Antwort2

Wenn Sie Ihre Seite in mehrere Dateien (JavaScript, CSS, Bilder usw.) aufteilen und dabei HTML-Header (z. B. „Expires:“) richtig verwenden, kann die durchschnittliche von einem Benutzer geladene Dateimenge viel geringer sein als die Gesamtmenge. Auf meiner Site beträgt die Gesamtmenge der pro Ladevorgang geladenen Dateien beispielsweise 100–200 KB, aber die durchschnittlich pro Seitenaufruf geladene Dateimenge beträgt nur 10–20 % davon.

Eine gute Gesamtseitengröße hängt von der Art Ihrer Website und den Inhalten ab, die Sie bereitstellen. Für mich ist eine Seite mit 200 KB groß, für manche ist sie riesig und für andere vielleicht klein. Es ist immer eine gute Idee, die Ladezeiten Ihrer Website zu testen/zu vergleichen. DieFeuerwanzeDie Erweiterung für FireFox ist hierfür praktisch.

Eine weitere Option für einige Inhaltstypen besteht darin, AJAX-Aufrufe zu verwenden, um Daten nach dem ersten Laden der Seite nach Bedarf Stück für Stück zu laden.

Antwort3

Sprechen Sie von ASP oder ASP.NET? Wenn es ASP.NET ist, achten Sie auf die Größe der Viewstate-Variable/des Viewstate-Felds, das in die Seite eingebettet wird. Alle Formular-Postbacks vom Browser müssen dieses versteckte Feld mit der Anfrage senden, und wenn Sie nicht vorsichtig sind, wie Sie den Status auf der Seite speichern, kann es sehr schnell sehr groß werden. Sie möchten nicht, dass Ihre Benutzer jedes Mal, wenn sie auf eine Schaltfläche oder ein Steuerelement auf einer Seite klicken, über 256 KB hochladen.

Es gibt eine nette kleine Firefox-Erweiterung namens „Viewstate Size“, die diese Informationen in der Statusleiste platziert.

verwandte Informationen