2009-07-23 3 views
11

Ich versuche herauszufinden, ob es Prinzipien gibt zu definieren, welche Seiten gzip-komprimiert werden und eine Linie zu zeichnen, wenn Sie HTML-Inhalte senden.Kann ich alle meine HTML-Inhalt (Seiten) gzip-komprimieren

Es wäre hilfreich, wenn Sie die Entscheidungen teilen könnten, die Sie in gzip-compressing eines Teils Ihres Projekts getroffen haben.

Antwort

7

eine gute Idee ist es, Benchmark, wie schnell die Daten herunterkommen vs Wie gut komprimiert ist das. Wenn es 5 Sekunden dauert zu senden etwas, das von 200K auf 160K ging, ist es wahrscheinlich nicht wert. Es gibt Kosten für die Komprimierung auf der Serverseite und wenn der Server ausgelastet ist, lohnt es sich möglicherweise nicht.

In den meisten Fällen, wenn Ihre Serverlast unter 0,8 regelmäßig ist, würde ich nur alles gzip, das nicht binär ist wie JPEGs, PNGs und ZIP-Dateien.

Es gibt eine gute aufzuschreiben hier:

http://developer.yahoo.com/performance/rules.html#gzip

+0

Wenn Sie Level 1 der GZIP-Komprimierung verwenden, wird die CPU-Nutzung sehr niedrig. –

4

Wenn die CPU Ihres Servers nicht stark ausgelastet ist, würde ich immer die Komprimierung verwenden. Es ist ein Kompromiss zwischen Bandbreite und CPU-Auslastung, und Webserver haben in der Regel viel freie CPU-Zyklen übrig.

4

Ich glaube nicht, dass es einen guten Grund gibt nicht zu gzip HTML-Inhalt.

Es braucht sehr wenig CPU-Leistung für große Gewinne in der Ladegeschwindigkeit.

+1

Können Sie sie vor der Zeit gzip, manuell, oder benötigen Sie den Web-Server haben, sie gzip? Mit anderen Worten, sie würden alle Dateien auf der Platte entzippen und der Webserver würde (wenn er es sendet) entpacken, wo der Client sagt, dass er nicht mit gzip umgehen kann. – lumpynose

+0

Sie würden die Server-Konfiguration verwenden, um sie on-the-Fly zu gzip – Greg

2

Wir haben die Entscheidung getroffen, alle Inhalte zu entpacken, da wir lange Zeit damit verbracht haben, zu entscheiden, was zu gzip oder was nicht zu gzip zu tun hat. Der Overhead von gzipping ist nicht wesentlich höher als das gzipping von nichts.

Diese webpage schlägt vor:

„Server wählen, was basierend auf gzip auf Dateityp, sondern sind in der Regel zu begrenzt, was sie zu Kompresse entscheiden Die meisten Web-Sites gzip ihre HTML-Dokumente Es ist.. auch lohnt Ihre Skripte und Stylesheets auf gzip, aber viele Websites verpassen diese Chance. In der Tat, es lohnt sich jeden Text Antwort einschließlich XML und JSON. das Bild und PDF zu komprimieren Dateien sollten nicht gezippt werden, da sie bereits komprimiert sind. Der Versuch, sie nicht nur Abfälle CPU gzip kann aber potenziell Dateigrößen erhöhen.“

Wenn Sie CPU-Zeit kümmern, würde ich vorschlagen, nicht bereits komprimiert Inhalt Gzipping. Denken Sie daran, beim Hinzufügen von Komplexität zu einem System, das Programmierer/Systemadministratoren sind teuer, Server billig sind

4

gibt es noch eine bemerkenswerte Ausnahme:.. Es gibt eine bug in Internet Explorer 6, dass alle komprimierten Inhalt leer aufdrehen macht

+0

Yeah. Dummes IE6. http://sebduggan.com/posts/ie6-gzip-bug-solved-using-isapi-rewrite – Nosredna

+1

Für IE6, ist es üblich, dass die Checkbox „Internetoptionen> Erweitert> Einstellungen> Verschlüsselte Seiten nicht auf einen Datenträger speichern“ Kontrollkästchen überprüft werden? z.B. Wie viel Prozent der IE6-Nutzer werden dies "in freier Wildbahn" überprüfen lassen? – scunliffe

+0

Guter Punkt, dieser Link war ein ziemlich seltener Fall. Hier ist ein weiteres, das ist immer noch selten, aber immer noch existiert: http://support.microsoft.com/default.aspx?scid=kb;en-us;823386&Product=ie600 - ich bin sicher, es gibt mehr, wo das herkam. –

2

Betrachtet man ein großer Gewinn ist auf die Größe der HTML-Daten zum Download, wenn es gzip, ich sehe nicht, warum Sie nicht gzip sollten es.

Vielleicht verwendet es ein wenig CPU ... Aber nicht so viel; und es ist wirklich interessant für den Kunden, der weniger herunterladen muss.Und es sind nur ein paar Zeilen in der Webserver-Konfiguration, um es zu aktivieren.

(Aber lassen Sie Ihren Webserver das tun: es Module für die am häufigsten verwendeten Server wie mod_deflate sind)

Als semi-Bemerkung am Rande: Sie sprechen von Content-Seiten HTML-Komprimierung ... Aber bei HTML-Seiten stoppen: Sie können auch JS und CSS komprimieren (sie sind Textdateien und werden daher im Allgemeinen sehr gut komprimiert), und es kostet auch nicht viel CPU.

das großen JS/CSS-Frameworks in Gebrauch heute betrachten, ist der Gewinn wahrscheinlich noch konsequenter von denen, als durch Komprimieren von HTML-Seiten zu komprimieren.