Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 3487|Odpověď: 3

[Zdroj] .NET 6 testuje algoritmy Gzip a Brotli

[Kopírovat odkaz]
Zveřejněno 17.09.2023 10:45:34 | | | |
Požadavky: HTTP nyní přidává algoritmus komprese Brotli pro testování algoritmů Gzip a Brotli. V závislosti na projektu je v článku testována pouze rychlost dekomprese.

Brotli má12 úrovní komprese, od 0 do 11, kde 0 poskytuje nejrychlejší kompresní rychlost, ale nejnižší kompresní poměr, zatímco 11 poskytuje nejvyšší kompresní poměr, ale vyžaduje více výpočetních zdrojů a času. Když jsme Brotli před 5 lety poprvé implementovali, zjistili jsme, že čtyřúrovňová komprese poskytuje rovnováhu mezi úsporou bajtu a časem komprese bez kompromisů ve výkonu. Čím vyšší je úroveň komprese, tím menší je footprint, ale prodává se více CPU a paměťových zdrojů.

ASP.NET algoritmus Brotli je již zabudovaný v jádru a nevyžaduje odkazy na balíčky třetích stran. (Tento článek se bude odkazovat na balíček třetí strany: BrotliSharpLib a vestavěný pro srovnání), konfigurace je následující:


ASP.NET Tok volání komprese Core Brotli: ResponseCompressionServicesExtensions -> AddResponseCompression -> ResponseCompressionProvider -> BrotliCompressionProvider -> BrotliStream.



Kód pro enumeraci na úrovni komprese je následující:

Vytvořte nový .NET 6 konzolový projekt s následujícím benchmarkovým kódem:


Výsledky testu jsou následující:



Testoval jsem 503kb soubor a po kompresi nebyl velký rozdíl, vše kolem 400kb, a ukázalo se, že rychlost dekomprese Gzipu je stále vyšší než u Brotli, což by mělo být stejnévelikost souboru, . NET verzi, úroveň komprese, obsah souboru atdStručně řečeno, nejlepší je vybrat si scénu, která vám vyhovuje.

Pokud narazíte na podobnou chybu:

Životní prostředí
  Shrnutí -> Detekován chybový výstupní kód z jednoho z benchmarků. Může být způsobena následujícím antivirovým softwarem:
        - 360 SafeGuard (C:\Program Files (x86)\360\360Safe\safemon\360tray.exe)
        - Windows Defender (windowsdefender://)
Použijte InProcessEmitToolchain nebo InProcessNoEmitToolchain, abyste se vyhnuli vytváření nových procesů.
řešení

nebo
(Konec)





Předchozí:[Otoč]. NET používá Brotli pro kompresi a dekompresi dat
Další:EF6 Required umožňuje prázdné řetězce, ale ne nulity
 Pronajímatel| Zveřejněno 17.09.2023 10:46:46 |

asp.net jádro 3.1 umožňuje kompresní algoritmus webu Brotli
https://www.itsvse.com/thread-9532-1-1.html

.net/c# komprese dat GZipStream
https://www.itsvse.com/thread-4240-1-1.html




 Pronajímatel| Zveřejněno 17.09.2023 10:48:01 |
[Otoč]. NET používá Brotli pro kompresi a dekompresi dat
https://www.itsvse.com/thread-10662-1-1.html
 Pronajímatel| Zveřejněno 07.01.2025 10:18:37 |
【zip】. NET/C# používá vestavěnou kompresi System.IO.Compression pro kompresi a dekompresi
https://www.itsvse.com/thread-10912-1-1.html
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com