Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 34710|Răspunde: 5

[ASP.NET] asp.net core 3.1 activează algoritmul de compresie site-ului Brotli

[Copiază linkul]
Postat la 2021-1-23 12:12:25 | | | |
Brotli este un nou algoritm de compresie dezvoltat de Google. Dimensiunea mai mică a răspunsului la compresie permite o utilizare mai bună a spațiului și încărcarea mai rapidă a paginilor. În multe cazuri, Brotli depășește gzip. Avantaje: Pentru active web tipice precum css, html, js, Brotli depășește gzip cu 17-25%. Densitatea Brotli -11 comparativ cu gzip-9: html (corpus multilingv): economisește 25% din js (cel mai mare 10k de la Alexa): salvează 17% din js micșorat (top 10k de la Alexa): salvează 17% din css (top 10k de la Alexa): economisire de 20%.

Introducere în algoritmul Brotli

Brotli a fost lansat inițial în 2015 pentru compresia offline a fonturilor web. Inginerii software Google au lansat o versiune îmbunătățită a Brotli în septembrie 2015, cu un accent special pe compresia HTTP. Encoderul a fost parțial rescris pentru a îmbunătăți raportul de compresie, atât encoderul, cât și decodorul au fost mărite pentru viteză, iar API-ul de streaming a fost îmbunătățit pentru a adăuga mai multe niveluri de calitate a compresiei. Noua versiune arată, de asemenea, îmbunătățiri de performanță pe toate platformele și o reducere a memoriei necesare pentru decodare.

Spre deosebire de algoritmii obișnuiți de compresie generală, Brotli folosește un dicționar predefinit de 120 de kilobyte. Dicționarul conține peste 13.000 de cuvinte, expresii și alte substringuri utilizate frecvent dintr-un corpus mare de texte și documente HTML. Algoritmi predefiniți pot crește densitatea compresiei fișierelor mai mici.

Folosirea Brotli în loc de dezumflare pentru a comprima fișierele text poate crește de obicei densitatea compresiei cu 20%, în timp ce viteza de compresie și decompresie este aproximativ aceeași. Tipul de codare a conținutului pentru compresia fluxului folosind Brotli a fost propus să folosească "br".

Brotli vs. Gzip


Când evaluăm algoritmii de compresie, ne concentrăm pe doi indicatori: rata de compresie și viteza de compresie. După cum puteți vedea în figura de mai sus, indiferent care dintre cele 9 niveluri de compresie ale gzip este folosită, raportul său de compresie este mai mic decât cel al brotli (comparativ cu gzip, poate fi configurat și la 10), iar viteza de compresie este de asemenea mai lentă.

Avantajul Brotli: Brotli depășește gzip cu 17-25% pentru active web tipice precum css, html, js. Densitatea Brotli -11 comparativ cu gzip-9: html (corpus multilingv): economisește 25% din js (cel mai mare 10k de la Alexa): salvează 17% din js micșorând (top 10k de la Alexa): salvează 17% din css (top 10k de la Alexa): 20% economii

asp.net de bază permite Brotli

Valoarea antetului Accept-Encoding



Configurarea codului

Următorul cod demonstrează cum să activezi middleware-ul de compresie responsive pentru tipul MIME implicit și furnizorii de compresie (Brotli și Gzip):


Notă:

  • aplicație. UseResponseCompression trebuie inclus în aplicație. Folosește UseMvc înainte să suni.
  • Folosește instrumente precum Fiddler, Firebug sau Postman pentru a configura antetul cererii Accept-Encoding și pentru a studia antetul, dimensiunea și corpul răspunsului.



În mod implicit, furnizorul de compresie Brotli este adăugat în array-ul furnizorului de compresie împreună cu furnizorul de compresie Gzip. Când clientul suportă formatul de date comprimate Brotli, compresia devine implicită compresia Brotli. Dacă clientul nu suportă Brotli, compresia devine implicită pe Gzip atunci când clientul suportă compresia Gzip.

Testul de compresie BR

Deschide instrumentul de captare a pachetelor Fiddler și folosește un browser pentru a accesa adresa site-ului nostru, poți vedea următoarele:




Antetul cererii: Accept-Encoding: gzip, deflate, br

Antet Răspuns: Conținut-Codificare: br

Când se efectuează compresia, antetul Content-Length este eliminat deoarece conținutul corpului se schimbă când răspunsul este comprimat.

Când se efectuează compresia, antetul Content-MD5 este eliminat deoarece conținutul corpului s-a schimbat și hash-ul nu mai este valabil.


Când nucleul asp.net activează funcția https, Brotli nu va avea efect asupra compresiei html și json, dar poate comprima js și css. (Este posibil ca lungimea caracterului să fie prea mică pentru a fi comprimată și să fie setată

(Sfârșit)





Precedent:Căutare inteligentă wildcard DNS cu nume de domeniu
Următor:asp.net nucleu în bloc redenumește pachetele zip din memorie
Postat la 2022-09-24 10:48:26 |
Originalitatea nu este ușoară, uită-te la codul sursă
Postat la 28-02-2023 11:51:11 |
Mulțumesc că ai împărtășit
 Proprietarul| Postat la 2023-9-1 21:59:51 |

 Proprietarul| Postat la 2023-9-17 10:47:02 |
.NET 6 testează algoritmii Gzip și Brotli
https://www.itsvse.com/thread-10663-1-1.html
 Proprietarul| Postat la 2025-11-16 22:39:26 |
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com