「サーバー速度No.1」の注記の読み方|h2loadの条件と、自分のサイトで5回測ったらばらついた
レンタルサーバーの広告には、「国内最速No.1」「処理速度No.1」といった言葉が並びます。小さな字の注記には、調べた日・方法・比べた相手が書かれています。この記事では、注記に書かれた条件を分解して、何が分かって何が分からないのかを整理し、さらに筆者のサイトにh2loadとは別の簡易な負荷を5回かけて、測るたびにどれだけ数字がばらつくかを確かめました。
(確認:エックスサーバー社のサービス(シンレンタルサーバーとXServer VPS)の公式サイトの注記と、h2loadのマニュアル。確認日:2026年10月21日。筆者は各サービスを契約しておらず、速度の優劣を判断するものではありません)
公式の注記に書かれていること
| 項目 | シンレンタルサーバー(サーバー速度) | XServer VPS(サーバー速度) | XServer VPS(性能) |
|---|---|---|---|
| 調べた時期 | 2026年6月30日 | 2026年7月13日 | 2024年11月18日 |
| 誰が | 自社調べ | 自社調べ | 自社調べ |
| 比べた相手 | 自社サービスを除いた国内シェア上位3サービスと、独自に選んだ国内の著名サービス・プランの計6つ | 自社サービスを含む国内シェア上位3サービスと、独自に選んだ国内の著名サービス・プランの計6つ | 国内シェア上位3社のVPS。メモリ2GBのプランが対象 |
| 測ったもの | h2loadを5回計測 | h2loadを5回計測 | CPUはsysbench、IOPSはブロックサイズ1MB・合計2GBで5分ごとに70回のランダム読み書きの平均 |
| プランの選び方 | 複数プランがあるサービスは、独自に選んだプランを除き、最下位のプランで計測 | 同左 | メモリ2GBのプラン |
「自社調べ」であること自体は悪いことではありません。条件を公開していれば、読む側が判断できます。ただし、注記に書かれていない条件が多いことにも気づきます。
h2loadとは何か、何が書かれていないか
h2loadは、nghttp2が提供する「HTTP/2サーバーのベンチマークツール」です。マニュアルによると、主な設定には次のものがあります。
- -n:全体のリクエスト数(既定は1)
- -c:同時に接続するクライアント数(既定は1)
- -m:1つの接続で同時に流すストリーム数(既定は1)
- 結果として、1秒当たりのリクエスト数などが出る
注記には「h2loadを5回計測した」とだけあり、リクエスト数・同時接続数・測るページ・結果の集計の仕方(平均か中央値か最良か)は書かれていません。そのため、読者が同じ条件で再現することはできません。また、h2loadが測るのはサーバーが返せるリクエストの量で、ブラウザに表示されるまでの体感の速度(LCPなど)とは別のものです。
自分のサイトで5回測ったら、どれだけばらついたか
h2loadとは別の、PowerShellで送る簡易な負荷を、筆者のサイト(自分のサイトだけ)に5回かけました。PowerShell 7で、同じURLに同時5本・合計50回のGETを送り、全体の所要時間から1秒当たりの回数を出しています(2026年10月21日)。
| 回 | 所要時間(50回) | 1秒当たり |
|---|---|---|
| 1 | 5.36秒 | 9.3回 |
| 2 | 3.41秒 | 14.7回 |
| 3 | 1.27秒 | 39.2回 |
| 4 | 2.21秒 | 22.6回 |
| 5 | 1.12秒 | 44.5回 |
5回で最も遅い回(9.3回/秒)と最も速い回(44.5回/秒)に、約4.8倍の差が出ました。中央値は22.6回/秒です。同じサイト、同じPC、同じ回線なのに、これだけばらつきます。原因は、サーバーのキャッシュの状態、他のアクセス、通信の揺らぎ、そして筆者のPC側の負荷(PowerShellの並列処理の準備)などが考えられますが、この測定では切り分けていません。サーバー側だけの揺れとは言えません。
この結果から言えるのは、「5回測った」という情報だけでは、平均・中央値・最良のどれを使うかで、結論が変わりうるということです。サーバー会社の注記と同じ手法で、他社のサービスを同じ条件で測ることは、筆者にはできていません。
広告の速度の数字を読む時の質問
- 誰が測ったか:第三者か自社か
- いつ測ったか:サーバーの構成は変わる。日付が古くないか
- 何と比べたか:相手は何社で、どう選んだか。相手のプランは何か
- どのプランで測ったか:最下位のプランか、自社の上位プランか
- 何を測ったか:サーバーの処理量か、表示までの時間か
- 何回測り、どう集計したか:平均・中央値・最良
- 測った条件を公開しているか:再現できるか
- 自分のサイトに関係があるか:自分のサイトのボトルネックが、サーバーの処理量なのか
8つ目が一番大事です。筆者の運営する13のサイトは、同じサーバーの中でも、トップページの応答時間(TTFB)の中央値が39〜271ミリ秒と開きました(1つの契約に何サイト入れるか)。サイトの作りの影響が、サーバーの差より大きい場合があります。
自分で簡単に測る方法
# 同じURLへ、同時5本で合計50回のGETを送り、全体の所要時間と1秒当たりの回数を出す(PowerShell 7用)。自分のサイトだけに使うこと
param(
[string]$Url = "https://realine.net/",
[int]$Total = 50,
[int]$Parallel = 5,
[int]$Runs = 5,
[int]$PauseSec = 5
)
for ($run = 1; $run -le $Runs; $run++) {
$sw = [System.Diagnostics.Stopwatch]::StartNew()
$codes = 1..$Total | ForEach-Object -ThrottleLimit $Parallel -Parallel {
$target = "$($using:Url)?burst=$($using:run)-$_" # 毎回違うクエリを付けて、キャッシュの当たり方を固定しない
try { (Invoke-WebRequest -Uri $target -TimeoutSec 20 -SkipHttpErrorCheck).StatusCode } catch { 0 }
}
$sw.Stop()
$sec = $sw.Elapsed.TotalSeconds
$ok = @($codes | Where-Object { $_ -eq 200 }).Count
"run {0}: {1:N2}秒 / {2}回(成功 {3})= {4:N1}回/秒" -f $run, $sec, $Total, $ok, ($Total / $sec)
if ($run -lt $Runs) { Start-Sleep -Seconds $PauseSec }
}
上のスクリプト(Burst-Get.ps1)は、筆者が実際に使ったものです。日本語のコメントを入れているので、Windows PowerShell 5.1では使えず、PowerShell 7で、UTF-8(BOM付き)で保存して実行します。5回の結果から、中央値と最小・最大を見ます。表示までの時間は、ChromeでLCPとCLSを測る方法、最初のバイトまでの時間はcurlでTTFBを10回測る方法が使えます。サーバーを変える前後の比較は、同じ方法・同じ時間帯で行います。
この記事で確かめていないこと
- 各社のサーバーを同じ条件で測った結果(筆者は契約していません)
- h2loadの結果の数値そのもの(ページのテキストには数値が書かれていません。グラフ画像の中身は確認していません)
- 5回のばらつきの原因(キャッシュ・回線・サーバーの負荷のどれか)
まとめ
- 「No.1」の注記には、調べた時期・方法・比べた相手が書かれているが、リクエスト数・同時接続数・集計方法は書かれていないことが多い
- h2loadが測るのはサーバーの処理量で、ブラウザでの表示の速さとは別のもの
- 筆者のサイトに簡易な負荷を5回かけると、9.3〜44.5回/秒と約4.8倍ばらついた。「5回測った」だけでは結論が変わりうる
- 広告の数字は、条件を確かめたうえで、自分のサイトで測って判断する
本記事は注記の読み方と測定方法の説明であり、特定のサービスの優劣を示すものではありません。他人のサイトに負荷をかけないでください。


