2013-05-22 10 views
31

Ich habe viel gehört, dass man gZip für ihre Webseiten für einen schnelleren Zugriff und Downloads verwenden sollte, und dass es auch die Bandbreite spart.Was ist GZip-Komprimierung?

Also was ist das GZip-Komprimierung und wie macht es die Downloads schneller? Komprimiert es HTML und Bilder oder nur HTML.

Wenn ich anfangen soll, gZip in meinen webapps zu verwenden, was Überlegungen muss ich machen? Gibt es einen Server oder Browser Einschränkungen dafür, oder unterstützt es nur eine bestimmte Codierung.

+0

Nehmen Sie das volle Wissen hier. http://en.wikipedia.org/wiki/Gzip – Nitesh

Antwort

1

GZip Komprimieren Sie die Dateien wie HTML-, JS- und CSS-Dateien, während Sie die Anfrage an den Browser senden. Wenn die Größe der Datei verringert wird, wird sie dem Benutzer schneller bereitgestellt. Nicht alle Browser unterstützen Komprimierung, sondern jetzt alle modernen Browser-Unterstützung. Es wird dringend empfohlen, aber nur ein Teil ist, dass es die CPU-Nutzung des Servers erhöht, die irgendwann betreffen kann. Die Verwendung von Gzip mit clientseitigem Caching trägt zur Leistungssteigerung bei.

+0

Wenn Sie eine Textinformation zur Verfügung stellen, die sehr kurz ist, können Sie sie zum Kommentarbereich direkt darunter hinzufügen, wo der Benutzer seine Frage gestellt hat. Geben Sie ausführliche Beschreibungen sowie erläuternde Beispiele an, die sowohl dem Benutzer als auch Personen helfen können, diese Frage zu beantworten. Thnx. - @Devesh – Nitesh

+0

@NathanLee ich stimme zu, Ihr Punkt genommen. Vielen Dank – Devesh

30

GZip ist eine Form der Datenkomprimierung - dh es nimmt einen Teil der Daten und verkleinert sie. Die ursprünglichen Daten können durch Entpacken der komprimierten Datei wiederhergestellt werden.

Es ist relevant für Web-Apps und Websites, da das HTTP-Protokoll die Möglichkeit enthält, gezippte Daten zu versenden.

Dies bedeutet, dass die Bandbreitenkosten für die Bereitstellung der Website geringer sind, wenn Besucher die Seite besuchen, um kleinere Dateien herunterzuladen.

Es gibt ein paar Einschränkungen bei der Verwendung von GZip, aber insgesamt ist es normalerweise besser, gzip zu verwenden als nicht - zum Beispiel braucht es Zeit und Prozessorleistung, um die Dateien zu komprimieren und zu entpacken, aber das ist normalerweise kein Problem weil die Zeit dafür oft kürzer ist als die Zeit, die durch das Herunterladen einer kleineren Datei gespart wird. Daher ist der Gesamteffekt eine Zeitersparnis, obwohl der Browser die Datei entpacken muss.

GZip kann alle Dateien komprimieren; Es macht keinen Unterschied, was der Dateityp oder die Kodierung ist. Offensichtlich können einige Dateien effektiver komprimiert werden als andere, so dass die Bandbreiteneinsparung variiert - Textdateien wie HTML liefern die besten Ergebnisse; Bilder werden von gzip nicht so stark komprimiert, weil sie bereits eine gewisse Kompression eingebaut haben. Einige Dateien (z. B. solche, die bereits stark komprimiert sind, wie .zip Dateien) können beim gzippen tatsächlich etwas größer werden, weil sie nicht weiter komprimiert werden können, aber gzip muss immer noch seine Metadaten zur Datei hinzufügen. Aber das sind Randfälle und machen keinen großen Unterschied.

GZip über HTTP passiert normalerweise völlig transparent. Der Endbenutzer sollte sich nicht bewusst sein, dass dies geschieht. der Browser würde es hinter den Kulissen für sie tun. Und vom Web-Server-Ende geht es einfach darum, eine Konfigurationseinstellung in Ihrer Webserver-Software zu aktivieren. Aus Ihrer Sicht ist das wirklich alles, was Sie wissen müssen; Legen Sie einfach die gzip-Einstellung auf Ihrem Server fest (oder fragen Sie Ihren ISP). Es ist durchaus möglich, dass es auf Ihrer Website bereits aktiv ist, ohne dass Sie es überhaupt wissen.

+2

Ist es Browser abhängig? – Ric

+4

@Ric - nein, alle Browser unterstützen es. Und selbst mit Browsern, die es nicht unterstützen, sollten sie trotzdem funktionieren - es ist Teil der HTTP 1.1-Spezifikation, dass der Client angibt, welche Art von Komprimierung er unterstützt, und der Server wird entsprechend reagieren (dh wenn der Browser sagt "Ich kann "t do gzip", der Server wird keine gzip-Dateien senden. Soweit ich mich erinnere, gab es einen Fehler in früheren Versionen von IE6, der gzip kaputt machte, aber Web-Server implementierten Work-arounds dafür, und IE6 selbst wurde in WinXP behoben SP2, so dass es wirklich nicht viele Leute geben wird, die immer noch die kaputte Version verwenden. – Spudley

+2

Ja, aber a) alle gängigen Browser und Server unterstützen es und b) Komprimierung wird zwischen dem Browser und dem Server für jede Transaktion ausgehandelt, also beliebige Mangel an Unterstützung durch unübliche Clients wird automatisch behandelt. –