Det magiske Gzip lyder måske lidt overvurderet, men det kan ikke sige for mange gange, hvor meget Gzip kan gøre for oplevelsen af en hjemmeside. Brugervenlighed har ikke kun noget at gøre med, hvordan en hjemmeside er opbygget; om det er et lækkert layout og hvorvidt brugeren kan finde rundt på hjemmesiden. Tager det for lang tid at hente og vise hjemmesiden vil der sandsynligvis ikke være nogen brugere, at vise den flotte hjemmeside for.
Problemet ligger i, at tid er blevet en vigtig faktor i vores liv. Der må derfor ikke være spildtid i forhold til at vente på at en hjemmeside bliver hentet. Der er et par kloge mænd der har udtalt, at der spildes 99 menneske år om dagen på grund af at hjemmesider ikke er komprimeret ordentligt. Det vil jeg nu mene er en pæn del, set i lyset at der kun skal et par linjer kode til.
Hvad er Gzip
Gzip er et GNU projekt, som bliver brugt til at komprimere filer, der står for ”GNU zip”. Den første udgave (0.1) udkom i Oktober 1992, efterfulgt af version 1.0 4 måneder senere i 1993. Gzip er baseret på DEFLATE algoritmen.
En af grundene til at Gzip er den foretrukne komprimering til HTML er, at Gzip har en super hastighed op mod selve komprimeringen. Gzip fungerer på den måde, at den leder efter tekst der matcher hinanden. Eftersom HTML er opbygget af ”Tags”, og ofte indeholder en masse mellemrum, gør det Gzip til en rigtig god komprimeringsmetode til HTML.
Når Gzip er aktiveret kan der spares helt op til 70% af overførslen af tekst filerne. Gzip kan anvendes på følgende fil formater HTML, XML, TXT, CSS, JS, PHP, PL og m.m.
Vær opmærksom på at det ikke er altid Gzip kan gøre en tekst mindre. I tilfælde af at der ikke er så mange matchene tekst i filen, vil det få filen til at vokse i stedet for at blive mindre.
I nedenstående eksempel er der vist, i hvilke tilfælde Gzip fungere bedst, og hvordan den bruger matchene tags til at komprimere.
Dårlig eksempel Uden komprimering: 88 bytes Med komprimering: 96 bytes Forskel: 8 bytes |
Gode eksempel Uden komprimering: 119 bytes Med komprimering: 45 bytes Forskel: -74 bytes |
<ul>Et</ul> <li>To</li> <p>Tre</p> <h1>Fire</h1> <h2>Fem</h2> <h3>Seks</h3> <h4>Syv</h4> |
<div>Doehl</div> <div>Doehl</div> <div>Doehl</div> <div>Doehl</div> <div>Doehl</div> <div>Doehl</div> <div>Doehl</div> |
Her bliver filstørrelsen 8 bytes større. Fordi forskelden ikke er større end 25 byte, vil kunden ikke opleve nogen forskel. | Her bliver filstørrelsen 74 bytes mindre, hvilket er en stor fordel. |
Følg med i del 2, hvor jeg vil forklare hvordan Gzip aktiveres.
Du er også velkommen til at følge min blog på Doehl.dk, hvor jeg skriver om hastighedsoptimering.