DotNetZip ライブラリで奇妙なパフォーマンスの問題が発生しています。
アプリケーション (asp.net で実行) では、データベースから一連のファイルを読み取り、ユーザーがダウンロードできるようにオンザフライで zip ファイルにパックします。
私の開発用ラップトップではすべて正常に動作します。デフォルトの圧縮率で約 10MB の zip ファイルは、完了するまでに約 5 秒かかります。ただし、顧客の開発サーバーでは、同じファイル セットを圧縮するのに約 1 ~ 2 分かかります。私はさらに長い時間、数分まで経験しました。zip 実行中の CPU 使用率は 100% ですが、それ以外はほぼ 0% のままで、過負荷ではありません。
さらに興味深いのは、実稼働サーバーでは、完了するまでに約 20 秒かかることです。
どこから探し始めるべきですか?
いくつかのハードウェア仕様:
私のノートパソコン
2コア、4GB RAM専用のvirtualbox上で動作する開発環境。
- コア i5 M540 2,5GHz
- 8GBのRAM
- Win7
開発サーバー
マイコンピュータのプロパティダイアログによると(おそらく仮想化)
- インテル Xeon 5160 3GHz
- 540MBのRAM
- Windows 2003 サーバー
タスク マネージャー レポート シングル コア
本番サーバー
マイコンピュータのプロパティダイアログによると(おそらく仮想化)
- キセノン 5160 3GHz
- 512MBのRAM
- Windows 2003 サーバー
タスク マネージャー レポート デュアル コア
更新 サーバーは VMWare ホスト上で実行されています。タスクバーに隠れている VMWare アイコンを見つけました。