レイテンシーとは?
レイテンシーは、リクエストを開始してから応答を受け取るまでの時間遅延です。通常はミリ秒(ms)で測定します。ネットワークやDNSでは、クライアントからサーバーへデータが移動し、応答が戻るまでの往復時間を指します。低レイテンシーは高速なWebサイト、応答性の高いアプリ、快適な利用体験に不可欠です。高レイテンシーは目立つ待ち時間を生み、利用者を苛立たせ、ビジネス指標にも影響します。レイテンシーの種類
ネットワークレイテンシー
データパケットがネットワークを通過する時間です。主な要因は次のとおりです。
- クライアントとサーバーの物理的な距離
- ネットワークホップ数(ルーターやスイッチの数)
- ネットワークの混雑と帯域幅の制限
- ネットワーク基盤の品質
DNSレイテンシー
ドメイン名をIPアドレスに解決するまでの時間です。
- DNSサーバーの応答時間
- キャッシュの状態(ヒットまたはミス)
- DNS問い合わせの連鎖(リゾルバーから権威サーバーまで)
- DNSSEC検証の処理時間
アプリケーションレイテンシー
アプリケーションがリクエストを処理する時間です。
- データベースクエリの実行
- サーバー側の処理
- API応答の生成
- バックエンドサービスとの通信
レイテンシーの測定
よく使うツール
# Ping test (ICMP latency)
ping example.com
# DNS resolution time
dig example.com | grep "Query time"
# HTTP timing
curl -w "@curl-format.txt" -o /dev/null -s https://example.com
主な指標
| 指標 | 説明 | 目標値の目安 |
|---|---|---|
| RTT(Round Trip Time) | リクエストと応答の完全な往復 | 100ms未満 |
| TTFB(Time to First Byte) | サーバーが応答を開始するまで | 200ms未満 |
| DNS解決 | ドメインからIPへの検索 | 50ms未満 |
| 接続時間 | TCPハンドシェイクの完了 | 100ms未満 |
地域によるレイテンシーの影響
地理的な距離はレイテンシーに直接影響します。
| 経路 | 一般的なレイテンシー |
|---|---|
| 同じ都市 | 1〜10ms |
| 同じ国 | 20〜50ms |
| 同じ大陸 | 50〜100ms |
| 大陸間 | 100〜200ms |
| 世界の反対側 | 200〜300ms |
DNSレイテンシーを下げる方法
エニーキャストDNS
DNSサーバーを世界各地に配置し、問い合わせを最も近い拠点へルーティングします。
- 複数のサーバーが同じIPアドレスを共有する
- 最寄りの拠点へ自動的にルーティングする
- 冗長性が組み込まれる
DNSキャッシュ
TTLを利用して繰り返し発生する検索を高速化します。
example.com. 300 IN A 192.0.2.1
↑ TTL in seconds
- ブラウザキャッシュ(数秒から数分)
- OSのキャッシュ
- ISPリゾルバーのキャッシュ
EDNSクライアントサブネット
地理情報を考慮した応答を有効にします。
- クライアントの位置情報を権威サーバーへ渡す
- 最も近いサーバーのIPを返す
- CDNのパフォーマンスを改善する
全体のレイテンシーを下げる方法
コンテンツ配信ネットワーク(CDN)
- エッジ拠点でコンテンツをキャッシュする
- 利用者に近いサーバーから配信する
- オリジンサーバーの負荷を下げる
接続の最適化
- HTTP/2の多重化
- Keep-Alive接続
- TLSセッション再開
- ハンドシェイクを減らすHTTP/3(QUIC)
インフラの選択
- 複数のデータセンター拠点
- 高品質なネットワーク事業者
- 最適化された経路
- 動的コンテンツ向けのエッジコンピューティング
レイテンシーと帯域幅の違い
両者の違いを理解することが重要です。
- レイテンシー: データが届き始めるまでの速さ(遅延)
- 帯域幅: 1秒あたりに流せるデータ量(スループット)
どちらも性能に関係しますが、インタラクティブなアプリでは、利用者が感じる速度にレイテンシーの方が大きく影響することがあります。
低レイテンシーは現代のWeb性能に不可欠で、利用者の満足度、コンバージョン率、検索順位に直接影響します。