「ページの表示が遅い」と感じたとき、その原因の一つがTTFB(Time To First Byte、サーバー応答時間)です。TTFBはブラウザがリクエストを送ってから、サーバーから最初の1バイトが返ってくるまでの時間を指します。この記事では、TTFBが遅くなる代表的な原因と、キャッシュ・CDN・ホスティングという3つの切り口でできる具体的な改善策を解説します。
TTFBとは何か
TTFB(Time To First Byte)は、ブラウザがサーバーにHTTPリクエストを送信してから、サーバーが最初の1バイトのレスポンスを返すまでにかかる時間のことです。この間には、DNS解決(ドメイン名をIPアドレスに変換する処理)、TCP接続の確立、TLSハンドシェイク(暗号化通信の準備)、サーバー側での処理(データベース検索やプログラムの実行など)が含まれます。
TTFBはページ表示速度全体の土台となる指標です。TTFBが遅いと、その後のHTML解析やCSS・JavaScriptの読み込みもすべて後ろ倒しになるため、体感速度やCore Web Vitals(Googleが提示する表示速度の評価指標群)にも影響します。
TTFBが遅くなる主な原因
TTFBの遅延には複数の要因が絡んでいます。まずは自分のサイトがどの原因に該当するか、切り分けて考えることが改善の第一歩です。
| 原因 | 内容 | 起こりやすい状況 |
|---|---|---|
| サーバー処理の遅さ | データベースへの問い合わせやプログラムの実行に時間がかかっている | 動的にページを生成するCMSや、複雑な検索処理があるサイト |
| キャッシュ未活用 | 同じ内容を毎回一から生成し直している | ページキャッシュやオブジェクトキャッシュが設定されていない |
| サーバーとの物理的距離 | アクセス元とサーバー所在地が離れている | 国内向けサイトなのに海外リージョンのサーバーを使用している |
| 共有ホスティングの負荷 | 同一サーバー内の他サイトの影響を受ける | 安価な共有プランで多数のサイトが同居している |
| DNS解決の遅延 | ドメイン名の名前解決に時間がかかる | DNSサーバーの応答が遅い、または設定が最適化されていない |
| SSL/TLSハンドシェイクの遅さ | 暗号化通信の確立に時間がかかる | 証明書の設定や鍵交換方式が古い、対応していない |
TTFBの測定方法
改善の前に、まず現状のTTFBを正確に把握しましょう。ブラウザの開発者ツールや無料の速度測定ツールで確認できます。
- ブラウザで対象ページを開き、開発者ツールの「Network」タブを表示する
- ページを再読み込みし、最初のHTMLリクエスト(ドキュメント)を選択する
- 「Timing」または「Waiting for server response」の項目でTTFBの値を確認する
- PageSpeed InsightsやWebPageTestなど外部の測定ツールでも同様の数値を確認し、複数回・複数のツールで平均的な傾向を見る
キャッシュによる改善
キャッシュとは、一度生成したページやデータの結果を保存しておき、次回以降は再計算せずにそのまま返す仕組みです。サーバー側の処理時間を大幅に減らせるため、TTFB改善の中でも効果が出やすい対策です。
- ページキャッシュ:生成済みのHTMLをそのまま返す。CMSのプラグインやサーバー機能で設定できることが多い
- オブジェクトキャッシュ:データベースへの問い合わせ結果を一時的に保存し、同じ問い合わせを繰り返さないようにする
- ブラウザキャッシュ:画像やCSSなど変化の少ないファイルを、訪問者のブラウザ側に保存させる(TTFB自体には直接効かないが再訪問時の体感速度に寄与)
- APIやCMS管理画面のレスポンスキャッシュ:動的な処理が多いサイトほど効果が大きい
CDNによる改善
CDN(Content Delivery Network)は、世界各地に配置されたサーバー(エッジサーバー)にコンテンツのコピーを分散させ、訪問者に地理的に近いサーバーから配信する仕組みです。物理的な距離が原因の遅延に対して効果があります。
- 静的ファイル(画像・CSS・JavaScript)だけでなく、HTMLページ自体もCDN側でキャッシュできるサービスが増えている
- オリジンサーバー(本来のサーバー)への問い合わせ回数自体を減らせるため、サーバー負荷の軽減にもつながる
- 海外からのアクセスが多いサイトほど、CDN導入によるTTFB改善効果が大きくなりやすい
- 導入時はキャッシュの反映タイミング(パージ設定)も合わせて確認しておくと、更新内容が反映されないトラブルを防げる
ホスティング選定のポイント
キャッシュとCDNを整えても改善が小さい場合、ホスティング環境(サーバーを借りているサービスやプラン)自体がボトルネックになっている可能性があります。
- サーバーの設置リージョンが主要な訪問者層の地域に近いか確認する
- 共有サーバーの場合、同居サイト数やリソース上限に余裕があるプランか見直す
- PHPやデータベースのバージョンが古いままになっていないか確認する
- SSL証明書やTLSの設定が最新の方式(HTTP/2やHTTP/3対応など)になっているか確認する
- アクセスが集中する時間帯にTTFBが特に悪化していないか、時間帯別に測定してみる
ホスティングの乗り換えは影響範囲が大きいため、まずはキャッシュとCDNで改善できる部分をやり切ってから検討するのが現実的な順序です。乗り換える場合も、移行前後でTTFBを同じ条件で測定し、効果を数値で確認しましょう。