回線速度の妥当性計算メモ
■想定
・ピーク時のPVを1時間あたり9,000と仮定する
・1PVあたり合計2MBのページを表示すると仮定する
・使用する回線速度は10Mbps、ベストエフォート(論理的な最大値。回線の限界)100Mbpsと仮定する
■要件
・ピーク時のPV「1時間当たり9,000」をさばけるかを調べたい
・ページの表示が4秒以内に完了できる前提で、許容できるPV数を求めたい
■算出
合計2MBのページを表示するので
2 * 1024 * 1024 = 2,097,152 bytes
2,097,152 * 8 = 16,777,216 bits
つまり、ページサイズは 16,777,216 bits である
回線速度は10Mbpsなので
10 * 1024 * 1024 = 10,485,760 bps
つまり、1秒間に 10,485,760 bits のデータを流すことができる
よって
10,485,760 / 16,777,216 = 0.625
となり、1秒間に0.625PVをさばけると言えるので、
0.625 * 60 * 60 = 2,250
となり、1時間に2,250PVまでなら回線的にはさばけると言える
■ベストエフォート
上の計算は回線速度が10Mbpsでの計算だが、ベストエフォートは100Mbps
実際に速度を計測してみると、40〜50Mbps程度出ている
よって、普段の回線速度は30Mbpsと仮定する
回線速度を3倍にして計算してみると
2,250 * 3 = 6,750
となり、1時間にさばける現実的なリクエスト数は6,750になる(9,000には届かない)
結論として、現在の想定では回線速度に不安があると言える
コンテンツを軽くする、回線のグレードを上げる、などの対策を考慮する必要がある
■4秒で表示できる目安
「8秒ルール」という言葉があり、Webページは8秒以内に表示されるべきとされている
ただしブラウザによるページ構築時間なども含まれているため、ここでは4秒という想定で計算してみる
1秒間に0.625PVをさばけるなら、
0.625 * 4 = 2.5
となり、同時に2.5PVまでなら4秒で表示できると言える
つまり4秒での表示完了を前提とするなら、回線的に2.5人の同時アクセスをさばけると言える
よって、サーバは同時に2.5人以上を捌けるスペックである必要がある(負荷テストの目安にする)
ただし最近は「6秒ルール」「3秒ルール」という言葉も使われるくらいなので注意