CAD日記

主にAutoCADのことについて書いているけど、近頃は投資系ネタに注力している。自動売買、仮想通貨、PC関係、プログラミングなど。@caddiary

ソフト開発

zipcopyが設計上まちがっていることを書いたがホントにそうかを調べてみた

投稿日:

以下にzipcopy Ver1.07開発中に気付いたことを転記する。
いろいろ直していて気付いたんだけど、そもそものところでこのソフトの設計思想があやまっていた。
ネットワーク上のサーバーにあるファイルを圧縮することをクライアントから操作していたら、サーバーのファイルを一度クライアント側に全部持ってこなくてはならないし、圧縮結果をサーバーに送り込まなければならない。この時点で大きなロスが発生していて、その後サーバーにあるzipファイルをクライアントにコピーしてくるなんて、とっても意味不明だ。

ホントにそうかを調べるには、モデルケースで実際に時間を計測してみるに限る。VSSの大量の小サイズファイルを対象とした。ファイル数26,709(フォルダ数42)、ディスク上のサイズ252MBのファイル群を対象にして、サーバーからクライアントにコピーしてくる時間を計測。zipに圧縮すると58MBになったから圧縮率23%。
①エクスプローラでコピー:540秒(100%)
②zipcopy:337秒(62%)
③FastCopy:300秒(55%)
④7zipで手動でローカルにzip圧縮:280秒(52%)
⑤サーバーでzip圧縮+クライアントからサーバーのzipコピー:⇒80秒(15%)

zipcopyなかなかいい数字を出したじゃないか!エクスプローラでコピーよりも約40%減の時間で済んでいる。FastCopyもそこそこいいけど、7zipの手動操作がいい結果を出している。サーバーで処理させる⑤が格段にいい数字を出しているのは予想通り。サーバー内でのzip圧縮して圧縮されたファイルをネットワークコピーするんだから一番効率いい。だた、クライアントの指示でサーバーに処理をさせるとなると、サーバー側に仕掛けが必要になって、一気にハードルが上がる。セキュリティだって考慮しなきゃならん。結論で言うと、④の7zip手動操作が一番いいな。こんどそういう機会があったらそうしよう。そして、⑤については、ヒマなときに構想をめぐらしてみて、モノになりそうならプログラムを組んでみよう。

-ソフト開発

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

iTextSharpのバージョンとライセンスが難しい

iTextSharpがPDFを作るオープンソースであることはよく知られているが、そのバージョンとライセンスについてくわしく調べようとすると深みにはまる。 バージョンについて。 4系、5系、7系があって …

no image

テキストファイルの最大行数

【2018/12/24追記】以下の記事も参考になるかな。 扱えるテキストファイルの最大行数は1億行 バカでかいテキストファイルを作る必要があって、結果約2GBにもなった。 CADから出力するんだけど、 …

若いもんにC++を教えてやって、これまでやってきたことが少しでも伝わってくれればと願う夜

ファイルをセレクトするというC++で作ったActiveXのDLLのデバッグができないかと彼がおいらのところに来た時点で、そいつはなかなかチカラがあるなと感じた。

WinMergeで複数拡張子を対象とするファイルフィルタと簡単な行フィルタ指定をやってみた

WinMergeでファイル比較することは、SEだったらみんなやっていることと思う。でもファイルフィルタと行フィルタは使ったことがないと思う。おいらだって、何年もWinMergeを使ってきたけど、正規表 …

zipcopy Ver1.01リリース

以下でアップしていたzipcopyについて、ちょいと手直ししてVer1.01としてリリースする。 zipcopy~圧縮してコピー~ができたのでアップしておく zipcopyのダウンロードはここをクリッ …