Reikalavimai: HTTP dabar prideda Brotli glaudinimo algoritmą, kad išbandytų Gzip ir Brotli algoritmus. Priklausomai nuo projekto, straipsnyje tikrinamas tik dekompresijos greitis.
Brotli turi12 suspaudimo lygių, nuo 0 iki 11, kur 0 užtikrina didžiausią glaudinimo greitį, bet mažiausią glaudinimo laipsnį, o 11 – didžiausią glaudinimo laipsnį, tačiau reikalauja daugiau skaičiavimo išteklių ir laiko. Kai pirmą kartą įdiegėme "Brotli" prieš 5 metus, nustatėme, kad 4 lygių glaudinimas užtikrina baitų taupymo ir glaudinimo laiko pusiausvyrą, nepakenkiant našumui. Kuo didesnis glaudinimo lygis, tuo mažesnis pėdsakas, tačiau jis parduoda daugiau procesoriaus ir atminties išteklių.
ASP.NET Brotli algoritmas jau yra integruotas į branduolį ir nereikalauja nuorodos į trečiųjų šalių paketus. (Šiame straipsnyje bus nurodytas trečiosios šalies paketas: "BrotliSharpLib" ir įmontuotas palyginimui), konfigūracija yra tokia:
ASP.NET Core Brotli glaudinimo skambučių srautas: ResponseCompressionServicesExtensions -> AddResponseCompression -> ResponseCompressionProvider -> BrotliCompressionProvider -> BrotliStream.
Suspaudimo lygio išvardijimo kodas yra toks:
Sukurkite naują .NET 6 konsolės projektą naudodami šį etaloninį kodą:
Bandymo rezultatai yra tokie:
Išbandžiau 503 kb failą, o po suspaudimo nebuvo didelio skirtumo, visi apie 400 kb, ir paaiškėjo, kad Gzip išskleidimo greitis vis dar buvo didesnis nei Brotli, kuris turėtų būti toks patfailo dydis, . NET versija, glaudinimo lygis, failo turinys ir kt.Trumpai tariant, geriausia pasirinkti jums tinkančią sceną.
Jei susiduriate su tokia klaida:
Aplinkos Suvestinė -> Aptiktas klaidos išėjimo kodas iš vieno iš etalonų. Tai gali sukelti ši antivirusinė programinė įranga: - 360 SafeGuard (C:\Program Files (x86)\360\360Safe\safemon\360tray.exe) - "Windows" sargyba (windowsdefender://) Naudokite InProcessEmitToolchain arba InProcessNoEmitToolchain, kad išvengtumėte naujų procesų kūrimo. sprendimas
arba
(Pabaiga)
|