Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 34710|Odpoveď: 5

[ASP.NET] asp.net core 3.1 umožňuje algoritmus kompresie webstránky Brotli

[Kopírovať odkaz]
Zverejnené 2021-1-23 12:12:25 | | | |
Brotli je nový kompresný algoritmus vyvinutý spoločnosťou Google. Menšia veľkosť kompresnej odozvy umožňuje lepšie využitie priestoru a rýchlejšie načítanie stránok. V mnohých prípadoch Brotli prekonáva gzip. Výhody: Pre typické webové aktíva ako css, html, js, Brotli prekonáva gzip o 17-25 %. Brotli -11 hustota v porovnaní s gzip-9: html (viacjazyčný korpus): ušetrite 25 % js (najväčších 10 000 v Alexe): ušetrite 17 % zmenšujúceho sa JS (top 10 000 v Alexe): ušetrite 17 % CSS (top 10 000 Alexy): 20 % úspory.

Úvod do Brotli algoritmu

Brotli bol pôvodne vydaný v roku 2015 na offline kompresiu webových fontov. Softvéroví inžinieri Google vydali vylepšenú verziu Brotli v septembri 2015 so špeciálnym zameraním na kompresiu HTTP. Enkodér bol čiastočne prepísaný na zlepšenie kompresného pomeru, enkodér aj dekodér boli zvýšené pre vyššiu rýchlosť a streamovacie API bolo vylepšené, aby pridalo viac úrovní kompresie. Nová verzia tiež ukazuje zlepšenie výkonu naprieč platformami a zníženú pamäť potrebnú na dekódovanie.

Na rozdiel od bežných všeobecných kompresných algoritmov používa Brotli preddefinovaný 120-kilobajtový slovník. Slovník obsahuje viac ako 13 000 bežne používaných slov, fráz a ďalších podreťazcov z veľkého korpusu textových a HTML dokumentov. Preddefinované algoritmy môžu zvýšiť hustotu kompresie menších súborov.

Použitie Brotli namiesto deflate na kompresiu textových súborov zvyčajne zvýši hustotu kompresie o 20 %, zatiaľ čo rýchlosť kompresie a dekompresie je približne rovnaká. Typ kódovania obsahu pre kompresiu prúdov pomocou Brotli bol navrhnutý s použitím "br".

Brotli vs. Gzip


Pri hodnotení kompresných algoritmov sa zameriavame na dva ukazovatele: mieru kompresie a rýchlosť kompresie. Ako vidíte na obrázku vyššie, bez ohľadu na to, ktorá z 9 kompresných úrovní gzip sa použije, jeho kompresný pomer je nižší ako u Brotliho (v porovnaní s gzip ho možno nastaviť aj na 10) a rýchlosť kompresie je tiež pomalšia.

Výhoda Brothli: Brotli prekonáva gzip o 17-25 % pre bežné webové assety ako css, html, js. Brotli -11 hustota v porovnaní s gzip-9: html (viacjazyčný korpus): ušetrite 25% js (najvyššie 10k od Alexy): ušetrite 17% zmenšujúceho sa JS (top 10k Alexy): ušetrite 17% CSS (top 10k Alexy): 20% úspory

asp.net jadro umožňuje Brotli

Hodnota hlavičky Accept-Encoding



Konfigurácia kódu

Nasledujúci kód ukazuje, ako povoliť responzívny kompresný middleware pre predvolené typy MIME a poskytovateľov kompresie (Brotli a Gzip):


Nota:

  • aplikácia. UseResponseCompression musí byť súčasťou aplikácie. Používajte Mvc pred zavolaním.
  • Použite nástroje ako Fiddler, Firebug alebo Postman na nastavenie hlavičky požiadavky Accept-Encoding a študujte hlavičku odpovede, veľkosť a telo.



Štandardne je poskytovateľ kompresie Brotli pridaný do poľa poskytovateľa spolu s poskytovateľom kompresie Gzip. Keď klient podporuje komprimovaný dátový formát Brotli, kompresia sa predvolene nastaví na Brotli kompresiu. Ak klient nepodporuje Brotli, kompresia sa predvolene nastaví na Gzip, keď klient podporuje Gzip kompresiu.

BR kompresný test

Otvorte nástroj Fiddler na zachytávanie paketov a použite prehliadač na prístup k adrese našej webovej stránky, môžete vidieť nasledovné:




Hlavička požiadavky: Accept-Encoding: gzip, deflate, br

Hlavička odpovede: Content-Encoding: br

Keď sa vykoná kompresia, hlavička Content-Length sa odstráni, pretože obsah tela sa mení pri kompresii odpovede.

Keď sa vykoná kompresia, hlavička Content-MD5 sa odstráni, pretože sa zmenil obsah tela a hash už nie je platný.


Keď asp.net core zapne https funkciu, Brotli sa neprejaví pri kompresii html a json, ale dokáže komprimovať js a css. (Je možné, že dĺžka znaku je príliš malá na kompresiu a mala by byť nastavená

(Koniec)





Predchádzajúci:Inteligentné vyhľadávanie divokej karty DNS pomocou divokého mena domény
Budúci:asp.net core bulk premenováva zip pakety v pamäti
Zverejnené 2022-9-24 10:48:26 |
Originalita nie je jednoduchá, pozri sa na zdrojový kód
Zverejnené 2023-2-28 11:51:11 |
Ďakujem za zdieľanie
 Prenajímateľ| Zverejnené 1. júna 2023 21:59:51 |

 Prenajímateľ| Zverejnené 17.9.2023 10:47:02 |
.NET 6 testuje algoritmy Gzip a Brotli
https://www.itsvse.com/thread-10663-1-1.html
 Prenajímateľ| Zverejnené 2025-11-16 22:39:26 |
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com