Met verschillende soorten Gzip-bestanden en -toepassingen die tegenwoordig beschikbaar zijn, kan HTTP-inhoud worden gecomprimeerd voordat deze aan een client wordt aangeboden, en deze worden allemaal gebruikt op Unix en Unix-achtige systemen. Het resultaat van dit proces is dat een bestand tot 80% krimpt, wat resulteert in snellere laadtijden van pagina's, minder bandbreedteverbruik en een vermindering van de SSL-overhead.
Compressie kan worden gebruikt voordat inhoud de server verlaat om de bestandsgrootte te verkleinen om dit probleem aan te pakken. Er is een standaardcompressiemethode genaamd Gzip, die op grote schaal wordt gebruikt door webservers, browsers en andere toepassingen voor de naadloze compressie en decompressie van inhoud terwijl deze over het internet wordt verzonden. De grootte van JavaScript-, CSS- en HTML-bestanden kan tot 90% worden teruggebracht met het gzip-compressiealgoritme, dat vooral wordt gebruikt voor code- en tekstbestanden.
Hoe werkt Gzip?
- Om te bepalen of de browser gzip-compressie kan ondersteunen, controleert een server de header van een aanvraag wanneer hij een aanvraag voor een webpagina ontvangt.
- Als dat het geval is, zal de server de opmaak van de pagina genereren voordat de gzip-compressie wordt toegepast.
- Om de gecomprimeerde gegevensstroom aan de eindgebruiker te leveren, converteert Gzip de opmaakinhoud in een gecomprimeerde gegevensstroom.
- Er is een proces waarbij de gecomprimeerde stroom wordt gedecomprimeerd zodra deze de browser van de eindgebruiker bereikt.
- Het comprimeren van webinhoud met GZIP is een van de populairste technieken voor het comprimeren van inhoud op het web. Geschat wordt dat meer dan vijftig procent van alle websites op het internet gebruik maken van GNU Zip's verliesloze compressie om alles te comprimeren, van de pagina's tot de video's en foto's waarnaar ze verwijzen.
Ondanks de populariteit van GZIP in de huidige tijd, blijft de compressieratio van de standaardversie vaak achter bij de compressieratio van Brotli, hetgeen een bescheiden verbetering is ten opzichte van de standaardversie van GZIP. Bovendien is de adoptie van GZIP nu langzaam aan het dalen omdat websites overstappen op modernere technologieën dan GZIP.
Het effect van compressieniveaus op het gebruik van hulpbronnen
In tegenstelling tot andere compressieprocessen is Gzip-compressie afhankelijk van de CPU en heeft het verschillende compressieniveaus om uit te kiezen. Hoe hoger het compressieniveau, hoe kleiner het bestand, maar hoe meer CPU-tijd het zal vergen.
Geschat wordt dat de gemiddelde grootte van een webpagina de afgelopen tien jaar met bijna 1,2 MB is toegenomen. Als gevolg hiervan wordt het steeds noodzakelijker methoden te ontwikkelen om snel en efficiënt grote hoeveelheden gegevens te leveren naarmate onze vraag naar informatie toeneemt.
Wanneer moet GZIP worden gebruikt?
De compressie-algoritmen van GZIP bieden een acceptabel compressieniveau voor statische en dynamische inhoud, en ze zijn snel genoeg om op vrijwel elke client/server te draaien. Bovendien werken veel technologieën die tegenwoordig in gebruik zijn goed met statische inhoud, zoals bz2, xz, en Brotli.
Ondanks een langzame terugloop in web-ondersteuning voor GNU Zip, heeft het nog steeds vele toepassingen die het nog vele jaren relevant zullen houden. Bijvoorbeeld, ongeacht nieuwere compressie technologieën, er zal altijd een trade-off zijn tussen server-side verwerking en client-side compressie ratio's.
Als u meer van dit soort artikelen wilt lezen, kijk dan op Seahawk Media.