6

圧縮を実行するためにネイティブOSライブラリを使用する場合と比較して、rubyzipを使用してデータを圧縮する場合のパフォーマンスの違いは何でしょうか。URLから圧縮するデータをフェッチし、ZipOutputStreamを使用してzipファイルを作成しています。ネイティブOSユーティリティの場合、zipツールの使用を考えています。両方のアプローチの長所と短所を聞いていただければ幸いです。

4

2 に答える 2

2

操作にかかる時間やCPU使用率に大きな違いはないことがわかります。しかし、メモリ使用量に関しては大きな違いがありました。rubyzipを使用すると、ziputilを使用する場合と比較してプロセスがより多くのメモリを使用することになります。私たちのユースケースでは、メモリ使用量が重大な懸念事項であったため、ziputilを使用することになりました。

于 2011-11-23T12:20:19.037 に答える
1

Webからデータを取得している場合、ボトルネックがrubyzipになるかどうかは疑わしいです。Web接続の速度によってほとんど制限されるため、パフォーマンスの違いが多く見られるとは思えません。さらに、rubyzipはネイティブライブラリを使用してほとんどの作業を行います。おそらく問題なく動作するでしょうし、このタイプのアプリケーションの方がはるかに遅いとしたら、私は非常に驚きます。ここで、一度に数千のスレッドが実行されるために必要なCPUサイクル数が心配な場合は、gnuCライブラリを使用することをお勧めします。

于 2011-11-15T20:27:03.393 に答える