di: Massimo Fantini 16 Dicembre 2008
Nel presente articolo sono descritti due sistemi per ottimizzare le prestazioni di un sito web ospitato all'interno di un server web IIS6: la compressione HTTP e il "keep-alive" HTTP. L'utilizzo di queste due tecniche (definite all'inteno delle specifiche del protocollo HTTP 1.1) consente di migliorare la velocità di trasmissione delle pagine web, ridurre l'utilizzo della banda disponibile e diminuire il carico complessivo della CPU.
La versione 1.1 del protocollo HTTP, tramite la RFC 2616, introduce il sistema di compressione che consente ad un server web di inviare ad un browser una risposta HTTP in formato compresso. Questa tecnologia richiede che il server web sia in grado di codificare il messaggio in uscita (con opportuno algoritmo di compressione) e che il browser sia in grado di decodificare, decomprimendolo, il contenuto del messaggio. Gli obiettivi della compressione HTTP sono principalmente due:
In proposito può essere utile leggere le specifiche W3C del protocollo HTTP 1.1.
La compressione HTTP utilizza algoritmi standard di pubblico dominio per codificare files HTML, XML, Javascript, CSS ed altri formati. Poiché le specifiche sono contenute nella definizione del protocollo HTTP 1.1, tutti i browser moderni che supportano HTTP 1.1 sono in grado di decodificare contenuti compressi in modo completamente automatico: non è richiesta l'installazione di moduli aggiuntivi, né alcuna interazione con l'utente.
All'interno della richiesta HTTP il browser include le informazioni relative alla versione del protocollo HTTP supportata, ed il tipo di encoding accettato. Per esempio, una tipica richiesta HTTP può contenere le seguenti informazioni:
Esempio di richiesta HTTP
GET / HTTP/1.1 Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg Accept-Language: it Accept-Encoding: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) Host: www.html.it Connection: Keep-Alive
Con la proprietà Accept-Encoding il browser dichiara di supportare i contenuti compressi tramite l'algoritmo gzip.
Dopo aver elaborato la richiesta del browser, il server web, se opportunamente configurato, può inviare la risposta in formato compresso. L'intestazione della risposta dichiara il tipo di encoding applicato. L'intestazione di una risposta HTTP può contenere le seguenti informazioni:
Esempio di risposta HTTP
HTTP/1.1 200 OK Content-Type: text/html Content-Encoding: gzip Content-Length: 2610
in cui il server dichiara di aver trasmesso il corpo della risposta HTTP informato compresso utilizzando l'algoritmo gzip.
Guida risparmio energetico per serverDalla determinazione dei consumi al risparmio, dalla... |
Guida SubversionSVN è uno dei sistemi per il versioning più utilizzati al mondo.... |
Guida Application serverCosa sono, quali sono e come possono essere utilizzati nella... |
Ogni settimana, in due distinte newsletter: notizie a approfondimenti su Apache e IIS.
Iscriviti alla newsletter
|
|
Amministratore di Reti Windows Server 200811 Giugno 2012 a Milano |
|
Nessun corso previsto |