目的
スマホアプリ やる勉Eng に すべてのMP3を含めると アプリサイズ350MBとなり、システム上限(iOS 200MB Android 100Mb)を超えてしまう。
当面の対策として、はみ出る MP3 を 自社のレンタルサーバー(ファイル容量制限無し)に置くことにするが、その対策で、 サーバーの通信性能的に、何人のユーザーをサポートできるか、ざっくり計算したい。
結論
とりあえず、同時ユーザー 140人から200人、(30分のMP3の5分しか再生しないとする)条件がよければ、1000人ぐらいなら、 スマホアプリに入りきらないMP3は、サーバーに置いても、スムースにアクセスすることができそうだ。
ただし、近い将来には、はみ出る MP3 を バックグラウンドでダウンロードしておき、サーバーの負荷を 分散化するアプリケーションが必要になる。
実験
curl でダウンロードの速度を計測
環境条件
サーバーはアメリカ合衆国にあり、計測地・自宅は、日本の千葉県で、光ファイバーで接続。
計測結果
13.2 MB(13,871,348 byte)のMP3ファイル(再生時間30分=1800秒の音声ファイル)のダウンロードをcurlで計測
所要時間 12秒 、 平均速度 1128 Kbyte/sec と表示された。
考察
一般的に、スムースな音声再生一回線には、64k bit/sec(=8 k byte/sec) 必要とされる。
これを上記MP3ファイルサイズと再生時間で検証すると
7,706 byte/sec(=13871348/1800) = 62k bit/sec
となり、64k bit/sec が妥当な数値であることがわかる。
したがって、このサーバーでは、最大で
141(=1128/8) 人
が同時にMP3をスムースにダウンロード再生できる。
(実際は、WEBブラウザのバッファリングで改善されるだろうし、ユーザはやごく一部分の5分程度の再生のみで終わるから負荷は、ずっと軽い)
また、このMP3ファイルを一時間にダウンロードできる回数は、
300(=3600/12) 回/一時間
となり、最大で300人まで一時間につき利用できる。
このMP3ファイルは、圧縮度が悪い。他のMP3ファイルは、 1800秒で、9MBぐらいのサイズ。 つまり、1.47(=13.2/9)倍楽である。つまり、1.5倍の余裕が期待できる。
No comments:
Post a Comment