{"id":255565,"date":"2023-06-28T11:05:00","date_gmt":"2023-06-28T08:05:00","guid":{"rendered":"https:\/\/inform.click\/gzip-vs-brotli-quale-metodo-di-compressione-dovresti-usare-e-perche\/"},"modified":"2023-06-28T11:13:00","modified_gmt":"2023-06-28T08:13:00","slug":"gzip-vs-brotli-quale-metodo-di-compressione-dovresti-usare-e-perche","status":"publish","type":"post","link":"https:\/\/inform.click\/it\/gzip-vs-brotli-quale-metodo-di-compressione-dovresti-usare-e-perche\/","title":{"rendered":"Gzip vs Brotli &#8211; Quale metodo di compressione dovresti usare e perch\u00e9"},"content":{"rendered":"<p>\n  Gzip \u00e8 diventato il gold standard per la compressione dei file all'inizio degli anni '90, ma se lo stai ancora utilizzando nel 2018, potresti considerare di passare a un metodo di compressione pi\u00f9 recente.\n<\/p>\n<p>\n  Sebbene Gzip abbia ancora il suo posto nel cuore di molti, gli sviluppatori web si rivolgono sempre pi\u00f9 a opzioni superiori come l'algoritmo di compressione Brotli di Google.\n<\/p>\n<h5>\n  Una breve storia della compressione dei file<br \/>\n<\/h5>\n<p>\n  La &#8220;G&#8221; in Gzip \u00e8 l'abbreviazione di GNU. GNU \u00e8 un sistema operativo open source basato su Unix sviluppato negli anni '80. A quel tempo, Unisys e IBM avevano gi\u00e0 brevettato i propri algoritmi per la compressione e la decompressione dei file, che consentivano le loro macchine per archiviare pi\u00f9 dati.Pertanto, i programmatori Jean-loup Gailly e Mark Adler hanno creato Gzip come alternativa gratuita per gli utenti GNU.\n<\/p>\n<p>\n  Il nuovo Gzip non era solo un'imitazione economica; in realt\u00e0 era pi\u00f9 veloce dei suoi concorrenti protetti da copyright. Di conseguenza, le persone lo usano ancora per la compressione dei file fino ad oggi. Sebbene sia facile attenersi a ci\u00f2 con cui ti senti a tuo agio, esistono vari algoritmi di compressione che attualmente forniscono risultati di compressione migliori rispetto a Gzip. \u00c8 qui che entra in gioco Brotli.\n<\/p>\n<h5>\n  Cos'\u00e8 Brotly?<br \/>\n<\/h5>\n<p>\n  Brotli \u00e8 una nuova specifica del formato dei dati che sfrutta pi\u00f9 algoritmi per condensare i dati in modo pi\u00f9 efficiente rispetto a Gzip. Nel 2015, la specifica Brotli \u00e8 stata generalizzata per la compressione del flusso HTTP con il tipo di codifica del contenuto &#8220;br&#8221;.\n<\/p>\n<p>\n  Sviluppato da Jyrki Alakuijala e Zoltan Szabadka, Brotli utilizza gli stessi algoritmi di compressione di Gzip, ma \u00e8 anche supportato da un dizionario di parole e frasi usate di frequente per offrire un rapporto di compressione migliore.\n<\/p>\n<p>\n  Tieni presente che Gzip e Brotli dovrebbero essere usati solo per comprimere file di testo. I file binari come JPEG e MP4 si basano sui propri algoritmi di compressione specifici per formato. Se provi a comprimere un JPEG con Brotli, il file risultante sar\u00e0 effettivamente pi\u00f9 grande dell'originale.\n<\/p>\n<p>\n  Anche se non \u00e8 sempre stato cos\u00ec, ora Brotli \u00e8 supportato da tutti i principali browser.\n<\/p>\n<p><a href=\"https:\/\/inform.click\/wp-content\/uploads\/2022\/11\/post-293175-6382f3bba4f92.webp\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/inform.click\/wp-content\/uploads\/2022\/11\/post-293175-6382f3bba4f92.webp\" alt=\"\" \/><\/a><\/p>\n<p>\n  Nel caso in cui un browser che non supporta Brotli richieda una risorsa da un sito che fornisce file compressi con Brotli, il server eseguir\u00e0 un fallback su Gzip e fornir\u00e0 le risorse codificate supportate dal browser, a condizione che il server sia configurato correttamente.\n<\/p>\n<h5>\n  Cosa rende Brotli migliore?<br \/>\n<\/h5>\n<p>\n  Secondo una ricerca condotta da <a href=\"https:\/\/certsimple.com\/blog\/nginx-brotli\" target=\"_blank\" rel=\"noopener\">CertSimple<\/a> :\n<\/p>\n<ul>\n<li>I bundle JavaScript compressi con Brotli sono <strong>pi\u00f9 piccoli del 14%<\/strong> rispetto ai bundle Javascript compressi con Gzip.\n  <\/li>\n<li>I file HTML compressi da Broti sono <strong>pi\u00f9 piccoli del 21%<\/strong> rispetto ai loro equivalenti Gzip.\n  <\/li>\n<li>I file CSS compressi da Brotli sono <strong>pi\u00f9 piccoli del 17%<\/strong> rispetto a quelli compressi da Gzip.\n  <\/li>\n<\/ul>\n<p>\n  Poich\u00e9 la maggior parte dei siti Web si basa su tutti e tre questi tipi di risorse, si tratta di una notevole differenza nelle dimensioni delle risorse rispetto a Gzip. Questi risparmi, a loro volta, miglioreranno notevolmente le prestazioni della tua app.\n<\/p>\n<h5>\n  Gzip vs Brotli: ottenere il massimo da Brotli<br \/>\n<\/h5>\n<p>\n  Nonostante quello che potresti aver sentito, la compressione delle risorse con Brotli non \u00e8 pi\u00f9 lenta di Gzip. Detto questo, Gzip e Brotli offrono livelli di compressione variabili e le impostazioni predefinite di Brotli possono comportare una compressione pi\u00f9 lenta rispetto alle impostazioni predefinite di Gzip. Dovrai apportare alcune modifiche a Brotli per trovare un equilibrio accettabile tra dimensioni del file e velocit\u00e0 di compressione.\n<\/p>\n<p>\n  L'impostazione di compressione ideale dipende da cosa e quando stai comprimendo. Un buon punto di partenza \u00e8 Brotli 4 per una compressione pi\u00f9 rapida dei contenuti dinamici. D'altra parte, le risorse statiche possono essere compresse pi\u00f9 densamente in anticipo senza sacrificare la velocit\u00e0, quindi l'impostazione predefinita di &#8220;11&#8221; \u00e8 pi\u00f9 appropriata per tali contenuti.\n<\/p>\n<h5>\n  Installazione di Brotli sul tuo server web<br \/>\n<\/h5>\n<p>\n  L'aggiunta del supporto per Brotli offre vantaggi significativi con il minimo sforzo. A seconda del software del server Web che stai utilizzando, determiner\u00e0 quale metodo di integrazione dovrai utilizzare per integrare Brotli. Quanto segue delinea alcune opzioni disponibili:\n<\/p>\n<ul>\n<li>\n    <strong>Nginx<\/strong> ha <a href=\"https:\/\/github.com\/google\/ngx_brotli\" target=\"_blank\" rel=\"noopener\">un'estensione Brotli<\/a> offerta da Google.\n  <\/li>\n<li>\n    <strong>Apache offre<\/strong> <a href=\"https:\/\/github.com\/kjdev\/apache-mod-brotli\" target=\"_blank\" rel=\"noopener\">un'estensione Brotli<\/a> dedicata .\n  <\/li>\n<li>\n    <strong>Microsoft IIS<\/strong> non offre alcun supporto Brotli ufficiale, tuttavia esiste un <a href=\"https:\/\/www.iis.net\/downloads\/community\/2016\/03\/iis-brotli\" target=\"_blank\" rel=\"noopener\">modulo della community<\/a> che aggiunge il supporto.\n  <\/li>\n<li>\n    <strong>Node.js<\/strong> \u00e8 simile a Microsoft in quanto non esiste un supporto ufficiale, tuttavia esiste un <a href=\"https:\/\/www.npmjs.com\/package\/shrink-ray\" target=\"_blank\" rel=\"noopener\">modulo della community<\/a>.\n  <\/li>\n<\/ul>\n<p>\n  Per dimostrare un esempio di installazione rapida, supponiamo che tu stia eseguendo Nginx. In tal caso, puoi installare il modulo ngx_brotli con quanto segue:\n<\/p>\n<pre><code>cd nginx-1.x.x\n$ .\/configure --add-module=\/path\/to\/ngx_brotli\n$ make && make install<\/code><\/pre>\n<p>\n  Successivamente, aggiungi quanto segue al blocco HTTPS (Brotli funziona solo su HTTPS):\n<\/p>\n<pre><code>brotli on;\nbrotli_static on;\nbrotli_comp_level 4;\nbrotli_types text\/plain text\/css application\/javascript application\/json image\/svg+xml application\/xml+rss;<\/code><\/pre>\n<p>\n  \u00c8 possibile modificare le direttive di cui sopra come meglio credi.\n<\/p>\n<p>\n  Infine, inserisci quanto segue per riavviare NGINX e iniziare a raccogliere i frutti:\n<\/p>\n<pre><code>sudo systemctl restart nginx<\/code><\/pre>\n<h5>\n  Utilizzo di Brotli con risorse precompresse<br \/>\n<\/h5>\n<p>\n  Brotli \u00e8 ottimo per fornire risorse precompresse molto pi\u00f9 velocemente di Gzip. Ci\u00f2 \u00e8 dovuto al fatto che puoi comprimerli al livello pi\u00f9 alto di Brotli (11) e quindi fare in modo che il server di origine li raccolga quando richiesto.\n<\/p>\n<p>\n  Questo tipo di configurazione funziona alla grande con Webpack poich\u00e9 \u00e8 disponibile un plug-in Webpack per comprimere automaticamente le risorse statiche sia come Gzip che come Brotli. Pertanto, non \u00e8 richiesta alcuna compressione al volo, il che significa che il tempo altrimenti impiegato per comprimere i file viene risparmiato.\n<\/p>\n<p>\n  Scopri di pi\u00f9 su come utilizzare <a href=\"https:\/\/www.keycdn.com\/blog\/brotli-with-webpack\/\" target=\"_blank\" rel=\"noopener\">Webpack per generare asset compressi con Brotli<\/a>.\n<\/p>\n<h5>\n  Il tuo CDN supporta Brotli?<br \/>\n<\/h5>\n<p>\n  Per sfruttare appieno i vantaggi di Brotli, \u00e8 necessaria una <a href=\"https:\/\/www.keycdn.com\/what-is-a-cdn\" target=\"_blank\" rel=\"noopener\">rete di distribuzione dei contenuti<\/a> che lo supporti. KeyCDN, ad esempio, ha introdotto <a href=\"https:\/\/www.keycdn.com\/blog\/keycdn-brotli-support\/\" target=\"_blank\" rel=\"noopener\">il supporto Brotli<\/a> lo scorso anno per tutti i clienti senza costi aggiuntivi. Pertanto, non solo il tuo sito beneficer\u00e0 di file di dimensioni ridotte grazie a una migliore compressione Brotli, ma beneficer\u00e0 anche di una latenza ridotta grazie alla memorizzazione nella cache delle risorse sui server edge pi\u00f9 vicini ai tuoi visitatori.\n<\/p>\n<p>\n  Questo metodo richiede che il server di origine supporti Brotli e che la compressione effettiva avvenga sul lato server di origine. Ancora una volta, questo aiuta a risparmiare tempo ed evita la necessit\u00e0 di una compressione al volo che pu\u00f2 danneggiare le prestazioni.\n<\/p>\n<h5>\n  Gzip vs Brotli: in sintesi<br \/>\n<\/h5>\n<p>\n  Il piccolo sforzo richiesto per aggiungere Brotli al tuo server web vale il notevole risparmio di dimensioni del file. Sebbene a volte Brotli possa funzionare pi\u00f9 lentamente con le impostazioni di compressione pi\u00f9 elevate, \u00e8 possibile ottenere facilmente un equilibrio ideale tra velocit\u00e0 di compressione e dimensione del file regolando le impostazioni.\n<\/p>\n<p>\n  Sebbene l'utilizzo di Brotli possa trasformare le app Web veloci in app pi\u00f9 veloci, non render\u00e0 necessariamente veloci le app lente. Poich\u00e9 Brotli comprime solo risorse basate su testo, dovrai ottimizzare le tue immagini con altri mezzi. Se devi ancora passare a HTTP\/2, farlo pu\u00f2 fare un'enorme differenza nelle prestazioni della tua app. Ogni millisecondo conta, quindi qualsiasi azione intrapresa per velocizzare la tua applicazione migliora le tue possibilit\u00e0 di fidelizzare gli utenti.\n<\/p>\n<\/p>\n<div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">\n  Fonte di registrazione: <a target=\"_blank\" rel=\"noopener nofollow\" data-pssr=\"\" href=\"http:\/\/www.instantshift.com\/2018\/03\/02\/gzip-vs-brotli-compression\/\">instantshift.com<\/a>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Gzip \u00e8 diventato il gold standard per la compressione dei file all&#8217;inizio degli anni &#8217;90, ma se lo stai ancora utilizzando nel 2018, potresti considerare di passare a un metodo di compressione pi\u00f9 recente. Sebbene Gzip abbia ancora il suo posto nel cuore di molti, gli sviluppatori web si rivolgono sempre pi\u00f9 a opzioni superiori come l&#8217;algoritmo di compressione Brotli di Google. Una breve storia della compressione dei file La &#8220;G&#8221; in Gzip \u00e8 l&#8217;abbreviazione di GNU. GNU \u00e8 un sistema operativo open source basato su Unix sviluppato negli anni &#8217;80. A quel tempo, Unisys e IBM avevano gi\u00e0 brevettato i propri algoritmi per la compressione e la decompressione&#8230;<\/p>\n","protected":false},"author":1,"featured_media":196842,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[121,56],"tags":[],"class_list":["post-255565","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-strumenti-web","category-web-e-wordpress"],"_links":{"self":[{"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/posts\/255565","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/comments?post=255565"}],"version-history":[{"count":0,"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/posts\/255565\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/media\/196842"}],"wp:attachment":[{"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/media?parent=255565"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/categories?post=255565"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/tags?post=255565"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}