Persyaratan: HTTP sekarang menambahkan algoritma kompresi Brotli untuk menguji algoritma Gzip dan Brotli. Tergantung pada proyeknya, hanya kecepatan dekompresi yang diuji dalam artikel.
Brotli memiliki12 tingkat kompresi, dari 0 hingga 11, di mana 0 memberikan kecepatan kompresi tercepat tetapi rasio kompresi terendah, sedangkan 11 memberikan rasio kompresi tertinggi tetapi membutuhkan lebih banyak sumber daya dan waktu komputasi. Ketika kami pertama kali menerapkan Brotli 5 tahun yang lalu, kami menentukan bahwa kompresi 4 tingkat memberikan keseimbangan penghematan byte dan waktu kompresi tanpa mengorbankan kinerja. Semakin tinggi tingkat kompresi, semakin kecil footprintnya, tetapi menjual lebih banyak sumber daya CPU dan memori.
ASP.NET Algoritma Brotli sudah dibangun ke dalam inti dan tidak memerlukan referensi ke paket pihak ketiga. (Artikel ini akan merujuk ke paket pihak ketiga: BrotliSharpLib dan yang bawaan untuk perbandingan), konfigurasinya adalah sebagai berikut:
Alur panggilan kompresi Brotli ASP.NET Inti: ResponseCompressionServicesExtensions -> AddResponseCompression -> ResponseCompressionProvider -> BrotliCompressionProvider -> BrotliStream.
Kode pencacahan tingkat kompresi adalah sebagai berikut:
Buat proyek konsol .NET 6 baru dengan kode benchmark berikut:
Hasil tes adalah sebagai berikut:
Saya menguji file 503kb, dan setelah kompresi, tidak ada banyak perbedaan, semuanya sekitar 400kb, dan ternyata kecepatan dekompresi Gzip masih lebih cepat daripada Brotli, yang seharusnya samaukuran file, . Versi NET, tingkat kompresi, konten file, dllSingkatnya, yang terbaik adalah memilih pemandangan yang cocok untuk Anda.
Jika Anda mengalami kesalahan seperti ini:
Lingkungan Ringkasan -> Kode keluar kesalahan yang terdeteksi dari salah satu tolok ukur. Ini mungkin disebabkan oleh perangkat lunak antivirus berikut: - 360 SafeGuard (C:\Program Files (x86)\360\360Safemon\360tray.exe) - Windows Defender (windowsdefender://) Gunakan InProcessEmitToolchain atau InProcessNoEmitToolchain untuk menghindari pembuatan proses baru. larutan
atau
(Akhir)
|