owncloudとは
オンラインストレージと言えば「Dropbox」を最初に思い浮かべるほど一般から企業まで、多くのユーザの方がDropboxを使用している。しかし社外のストレージサービスにファイルを置くことに抵抗を感じる方も多くおられると思う。
そこで今回はDropboxライクなオンラインストレージを自社内サーバに構築できる「owncloud」というサービスを利用してみた。owncloudもファイル共有が出来、組織単位でのアクセス制限も可能。そしてDropboxとの比較としてもっとも大きい部分が容量を気にしなくてもよい(設置するサーバーの容量によるが)という点。
Dropboxでも十分なのだが、開発会社としては、もっと自由に使いまわしのできるオンラインストレージがほしい。
インストール方法などについてはネットでも多く紹介されているのでここでは割愛させていただくとして、技術者として非常に気になるのはCPUの使用率だ。
そこでちょっと下記のような実験を行い、CPU使用率を計測してみた。
※今回は比較対象がDropboxであるため、社外サーバーにowncloudを設置した
行ったテスト方法(CPU使用率の取得)
・各サービスでメモ帳を利用
・その際のCPU使用率をパフォーマンスカウンタで取得する
CPU使用率やメモリ使用状況などのパフォーマンス情報を取得するには.NET Frameworkの「System.Diagnostics.PerformanceCounter」クラスを利用することで収集できる。
// パフォーマンスカウンタを配列で定義 private System.Diagnostics.PerformanceCounter[] PerCnts = new System.Diagnostics.PerformanceCounter[3]; // PerformanceCounterを利用しCPU使用率を配列に取得 // Parameter : categoryname, countername, instancename PerCnts[1] = new System.Diagnostics.PerformanceCounter("Process", "% Processor Time", "Dropbox"); PriCnts[1].NextValue(); // 値を取得 PerCnts[2] = new System.Diagnostics.PerformanceCounter("Process", "% Processor Time", "owncloud"); PerCnts[2].NextValue(); // 値を取得
あとはタイマーイベントでデータを取得していく。その結果は下記のとおり。
結果
サンプリング周期:50msec
サンプリング数:5,000回
プログラム名 | CPU使用率(5,000回平均、単位:%) | 動作回数(1秒間に0.0%ではなかった回数) |
Dropbox.exe | 0.03912 | 15 |
owncloud.exe | 0.21796 | 40 |
今回の計測ではDropboxのほうがCPU使用率は低いという結果となったが、これはowncloudを設置するサーバースペックや社外か社内かにより数値は異なってくる。
自社サーバーにオンラインストレージ環境を構築できる「owncloud」。容量を気にせず使用でき、かつ組織単位でのアクセス制限、URL共有などの用途カスタマイズも可能。オンラインストレージのひとつとしてぜひお試しあれ。