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 を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

no image

POSTフィルター

VCでつくったWindowsアプリから、Webサイト上のPHPを呼び出して、 MySQLのDBをいじる。 そんなストーリーを思いつき、サンプルアプリを作った。 家からやったら問題なかったので会社から試 …

no image

TEMPフォルダ書き込みエラーが頻発したのはなぜだろう

「環境変数TEMPトラブルについて振り返る」という記事に書いた出来事は1か月ほど前に起きたことでありWindows Serverでもあったから、レアな事象としてとらえていたが、一昨日の金曜日に起きたこ …

PDFiumはPDFからテキスト抽出するのもちょー簡単

PDFiumを語るのに日本語はいらない。プログラマーはプログラム言語で語る。PDFiumの処理は、tryとfinallyのところだけを見てくれればよい。たったこれだけでPDFからテキストを抽出できるの …

no image

Breaker

以前、Layout Breakerという名前のソフトを作ろうと考えていました。レイアウトはともかく、ブレーカー、つまり破壊者です。周囲の反対により、取り下げましたが、個人的にはけっこう気に入っていて、 …

PDFアレコレVer1.01リリース

趣味のプログラムってホント楽しくて、平日の夜中だってのに眠りを忘れて取り組んでしまった。