この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 3487|答える: 3

[出典] .NET 6はGzipおよびBrotliアルゴリズムをテストします

[リンクをコピー]
掲載地 2023/09/17 10:45:34 | | | |
要件:HTTPはGzipおよびBrotliアルゴリズムのテスト用にBrotli圧縮アルゴリズムを追加しました。 プロジェクトによっては、記事内でテストされるのは減圧速度のみです。

ブロトリは12段階の圧縮0から11までで、0は最も速い圧縮速度を提供しますが圧縮比は最も低く、11は最も高い圧縮率を提供しますが、より多くの計算資源と時間を要します。 5年前にBrotliを初めて導入した際、4レベル圧縮がバイト節約と圧縮時間のバランスを保つと、パフォーマンスを損なわないと判断しました。 圧縮レベルが高いほどフットプリントは小さくなりますが、CPUやメモリの消費は増加します。

ASP.NET Brotliアルゴリズムはすでにコアに組み込まれており、サードパーティのパッケージを参照を必要としません。 (この記事では比較のためにサードパーティ製パッケージBrotliSharpLibと内蔵パッケージを参照します)、構成は以下の通りです:


ASP.NET コアBrotli圧縮コールフロー:ResponseCompressionServicesExtensions -> AddResponseCompression -> ResponseCompressionProvider -> BrotliCompressionProvider -> BrotliStream。



圧縮レベルの列挙コードは以下の通りです。

以下のベンチマークコードで新しい.NET 6コンソールプロジェクトを作成しましょう:


検査結果は以下の通りです。



503kbファイルをテストしましたが、圧縮後は大きな違いがなく、約400kbでした。そしてGzipの解凍速度はBrotliより速かったので、同じはずですファイルサイズ、 NETバージョン、圧縮レベル、ファイル内容など要するに、自分に合ったシーンを選ぶのが一番です。

このようなエラーに遭遇した場合:

環境
  概要 -> ベンチマークの一つからエラー出口コードを検出。 以下のアンチウイルスソフトが原因かもしれません:
        - 360 SafeGuard(C:\Program Files (x86)\360\360Safe\safemon\360tray.exe)
        - Windows Defender(windowsdefender://)
新しいプロセス作成を避けるためにInProcessEmitToolchainまたはInProcessNoEmitToolchainを使いましょう。
解決

又は
(終わり)





先の:[ターン]。 NETはBrotliを使ってデータを圧縮および解凍します
次に:EF6 Requiredは空文字列は許可しますが、nullityは許可しません
 地主| 掲載地 2023/09/17 10:46:46 |

asp.net コア3.1はウェブサイトBrotli圧縮アルゴリズムを可能にします
https://www.itsvse.com/thread-9532-1-1.html

.net/c# GZipStream データ圧縮
https://www.itsvse.com/thread-4240-1-1.html




 地主| 掲載地 2023/09/17 10:48:01 |
[ターン]。 NETはBrotliを使ってデータを圧縮および解凍します
https://www.itsvse.com/thread-10662-1-1.html
 地主| 掲載地 2025/01/07 10:18:37 |
【zip】。 NET/C#は組み込みのSystem.IO.Compressionを使って圧縮と解凍を行います
https://www.itsvse.com/thread-10912-1-1.html
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com