Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

分散 Web パフォーマンスアーキテクチャの設計

最終更新 Markdown で表示Agent セットアップ

はじめに

このガイドでは、アーキテクトと開発者向けの包括的なレイヤー 7(L7)アプリケーションパフォーマンス戦略を説明します。競争の激しいデジタル環境では、アプリケーションパフォーマンスは重要な事業上の差別化要因です。ただし、最終的な目標は、パフォーマンスとセキュリティの均衡点を見つけることです。

このガイドは速度とユーザー体験(UX)の最大化に焦点を当てますが、パフォーマンスのためにセキュリティを犠牲にはできません。アーキテクトは、レイテンシ削減と、DDoS protection、WAF、Bot Management などの厳格なセキュリティ制御に必要な処理オーバーヘッドとのバランスを取る必要があります。

リスクの高い場面ではセキュリティを優先します。パフォーマンス最適化で得た「レイテンシ予算」を、必要な保護の実行に戦略的に再投資します。これにより、ユーザーのコンバージョンにつながる速さと、事業を守れる安全性の両方を維持できます。

主要なビジネス指標 重要な理由
ユーザーエンゲージメントと定着 第一印象と離脱: 読み込みの速いサイトは、良いユーザー体験の土台です。ユーザーは情報への即時アクセスを期待しており、調査でも、読み込みに 時間がかかりすぎる と相当数のユーザーがサイトを離れ、直帰率が直接上がることが示されています。
収益とコンバージョン 事業への直接的な影響: Web パフォーマンスは、購入やニュースレター登録など、来訪者が目的の行動を完了する割合であるコンバージョン率に直接影響します。サイトが速いほどコンバージョン率は上がります。ある 調査 では、ホームページの読み込み時間が 100 ミリ秒短縮されただけで、コンバージョンが 1.11% 増加しました。
オーガニック可視性と検索順位 トラフィック獲得と権威: 検索エンジン最適化(SEO)では、Google などの検索エンジンがページ速度をランキング要因として使います。読み込みの速いサイトは検索結果で上位になりやすく、オーガニックトラフィックが増えます。Google の Core Web Vitals (CWV) は、ページの読み込み速度、操作への応答性、視覚的な安定性を測る指標群です。いずれもパフォーマンスに直結し、検索順位を大きく押し上げます。
高速配信と信頼性 ユーザー体験と信頼: この指標は、高い ダウンロード成功率(可用性/耐障害性)と最大の ダウンロードスループット(速度)を組み合わせます。ソフトウェア、動画、AI モデルなどのミッションクリティカルな資産では、ユーザーがファイルを速く確実に取得できることが、製品の使いやすさと顧客信頼に直結します。トラフィックスパイク時は特に重要です。
エッジ効率とコスト管理 運用コストの削減: この指標は、主に大容量ファイルの Cache Hit Ratio (CHR) で測ります。CHR を最大化するとオリジンサーバーのトラフィックが減ります。これがインフラ負荷を抑え、Bandwidth Alliance などを通じた データエグレスコストの削減 を実現する主要な要因です。運用コストの低下と収益性の向上に直結します。

影響の測定: マーケティングダッシュボード(例: Google Analytics)は事業成果を追います。一方、Cloudflare の Web AnalyticsObservatory は、その成果を動かすパフォーマンス要因を測ります。プライバシーを損なわず、重いクライアントサイドスクリプトにも頼らず、リアルタイムの Core Web Vitals (CWV) と Real User Monitoring (RUM) の改善を、直帰率の低下やコンバージョンの向上と直接関連付けられます。

このアーキテクチャに従うと、組織は次を期待できます。

  • LCP や INP などの Core Web Vitals (CWV) を改善し、直帰率の低下と売上向上につなげます。
  • Cache Hit Ratio を最大化し、オリジンのトラフィックをオフロードしてインフラ支出を減らし、全体の 運用コストを下げます
  • トラフィックスパイク時でも高い稼働率/可用性を保ち、事業の耐障害性 を確保します。

パフォーマンスの目標と指標

パフォーマンスの測定は難しい うえ、セキュリティと コンプライアンス が交渉不能な前提になる、より広い事業文脈の中で行われます。組織は多くの場合、パフォーマンス機能を解放する前に、アーキテクチャが規制要件(データ所在地 や、Post-Quantum Cryptography (PQC) を含む 暗号化プロトコル など)を満たしていることを確認します。

セキュリティとコンプライアンスの基準を確保したあと、効果的な最適化は「正しい」ものを測ることから始まります。興味深いことに、その「正しい」ものは組織ごとに少し異なります。それでも、Web サイトのパフォーマンスではユーザー中心の指標に焦点を当て、サーバー応答性の診断には TTFB を診断ツールとして使い、ユーザー体験の測定では Core Web Vitals (CWV) を優先する、という点では多くの人が同意します。

実装の成功は、次の指標で測ります。

指標 目標(75 パーセンタイル) 測定対象
Largest Contentful Paint (LCP) < 2.5 s 読み込み性能(ヒーロー画像/テキストの表示)。
Interaction to Next Paint (INP) < 200 ms 操作への応答性と入力に対する反応。
Cumulative Layout Shift (CLS) < 0.1 視覚的な安定性(予期しないレイアウトシフト)。
Time to First Byte (TTFB) < 800 ms サーバー応答性(ネットワーク + 処理時間)。cf.timings.origin_ttfb_msec などのフィールドを使い、オリジンのレイテンシをネットワークオーバーヘッドから切り分けて、接続性能を詳しく把握できます。

75 パーセンタイルの目標は、妥当なバランスを取るための 既存の分析 に基づきます。

データフロー

この図はリクエストのライフサイクルを示し、Cloudflare のレイヤー/フェーズ(ネットワーク、最適化、キャッシュ、オリジン接続)がどのように連携してレイテンシを最小化するかがわかります。

図 1: ユーザー、Cloudflare エッジ、Tiered Edge、オリジンの各層を横断するリクエストライフサイクルを示すデータフローの概要。
図 1: データフローの概要

説明のため、アーキテクチャは 4 つの論理層に整理し、特定の フェーズ に従います。この連鎖の各ステップを最適化することが、総合的に最良のパフォーマンスを得るために必要です。

1. ユーザー(アイボールクライアント)

パフォーマンスの旅は、クライアント端末から始まります。端末のハードウェア、ブラウザー、ネットワーク品質とトポロジーが、最初の応答性を決めます。ここでの目標は、Cloudflare ネットワークへの最短接続を確立することです。

  • DNS 解決: クライアント端末はドメインを問い合わせ、公開 DNS リゾルバーを経て、最終的に権威 DNS サーバーへ到達します。Cloudflare の グローバル anycast ネットワーク は、リクエストを最寄りの Point of Presence (PoP) へルーティングします。グローバル DNS の解決によりルックアップレイテンシを最小化し、中国本土 への拡張も可能です。
  • 接続の確立: クライアントは IPv4/IPv6 で、HTTP/3 (QUIC)TLS 1.3 を使って接続します。これで Post-Quantum Cryptography (PQC) も利用できます。以前訪れたクライアントなら、0-RTT Connection Resumption でハンドシェイク時のラウンドトリップをなくせます。さらに HTTP Strict Transport Security (HSTS) がブラウザー側で HTTPS へのリダイレクトを強制し、不要なサーバーラウンドトリップを除きます。一般には HTTPS 接続の強制 を推奨します。関連する TCP フィールド を使えば、適応型のパフォーマンス戦略も実装できます。
  • ブラウザー最適化: Speed Brain(Speculation Rules API)はリソースを先読みします。Early Hints は「サーバー思考時間」中に Link ヘッダーをブラウザーへ送り、ページ描画を速めます。
  • サードパーティのオフロード: Zaraz は、Google Analytics 4 や Mixpanel などのサードパーティツールをクラウドへオフロードします。端末上のメインスレッドブロッキングが減り、INP が大幅に改善します。
  • Web Analytics (RUM): Cloudflare の Web Analytics を使い、ユーザーのブラウザーからプライバシー優先・Cookie レスのパフォーマンスデータを収集します。この軽量な JavaScript ビーコンは、ユーザーを追跡したりクライアントサイドの状態を保存したりせず、Core Web Vitals(LCP、INP、CLS)の実測値を提供します。
図 2: Argo Smart Routing、Tiered Cache、Cache Reserve、Connection Reuse、Dedicated Egress IPs、複数の Point of Presence にわたる Load Balancing を示す Smart Shield Advanced のネットワーク図。
図 2: Smart Shield Advanced のネットワーク図

2. ネットワークと最適化(Cloudflare エッジ)

リクエストがネットワークエッジに到達すると、Cloudflare はコンテンツを処理・最適化してから、キャッシュへ出すか取得します。

  • トラフィック管理: リクエストを検査します。URL Normalization で一貫性を確保し、Redirect RulesTransform Rules でパス変更を効率よく処理します。Waiting Room大規模なトラフィックスパイク 時にバックエンドを保護し、可用性を維持します。
  • プログラムによるカスタマイズ: 標準ルールでは足りない高度な用途では、Snippets と Workers でプログラムによるカスタマイズができます。ヘッダーの変更、URL の書き換え、画像最適化、独自のキャッシュロジックを、エッジ上で直接実行できます。Service Bindings を使い、これらの Workers 間で低レイテンシ・オーバーヘッドなしの通信を行います。
  • コンテンツ最適化: テキスト資産は Compression Rules(Brotli/Gzip)で圧縮します。画像は Image Transformations または Polish でその場処理し、端末に最適な形式(AVIF/WebP)とサイズで配信します。LCP と CLS が大幅に改善します。
  • フォントとタグの最適化: Cloudflare Fonts は、Google Fonts への DNS ルックアップと TLS 接続をなくし、自ドメインからインライン配信します。Google Tag Gateway は、広告シグナルの測定とプライバシーを改善します。
  • ルーティング、可用性、プロトコルインテリジェンス: Cloudflare は世界で最も 相互接続されたネットワーク のひとつを運用し、13,000 以上のネットワークとピアリングし、グローバルバックボーン を持ち、世界有数の数の Internet Exchange Points (IXPs) に参加しています。この大規模データセットから得られる 独自のインテリジェンス を使い、プロトコルレベルで Congestion Control (CC) を動的に最適化します。リアルタイムのネットワーク状況に応じて、接続ごとに最適なアルゴリズムを選び、適切なパラメーターを調整します。キャッシュできない動的リクエストでは、Argo Smart Routing がネットワーク上の最短経路をオリジンまで見つけます。Custom Errors は、障害時にも一貫したブランド体験を提供します。
図 3: トラフィック処理、プログラムによるカスタマイズ、コンテンツ最適化、フォントとタグの最適化を示す、ネットワークとコンテンツ最適化のデータフロー。
図 3: データフロー - ネットワークとコンテンツ最適化

3. Tiered Cache とストレージ(Cloudflare エッジ)

Cloudflare は特定のトポロジーに整理できます。この層はコンテンツの保持と取得を担います。オリジンに対するシールドであり、クライアントに対する高速ストアでもあります。

  • キャッシュロジック: Origin Cache Control HeadersCache RulesCaching Levels で、TTL とクエリ文字列の扱いを精密に制御できます。マーケティングや SEO 用のパラメーターが異なる URL など、可変 URL のリクエストを 1 つの Cache Key にまとめる Cache Normalization 戦略を実装すると、キャッシュヒット率が大きく上がります。Prefetch URLs は、マニフェストファイル経由で重要な資産をキャッシュへ事前投入し、レイテンシをさらに下げます。デフォルトのキャッシュ動作と制限 にも注意してください。
  • Tiered Caching: コンテンツがローカル PoP にない場合、Cloudflare は上位ティアのキャッシュトポロジーを確認します。Smart Tiered CachingRegional Tiered Cache は接続を集約し、キャッシュヒット率を上げ、グローバルなオリジン負荷を減らします。よりカスタムな構成が必要な場合、Enterprise のお客様は Custom Tiered Cache トポロジーを選べます。
  • 専用の長期キャッシュ: Cache Reserve は、アクセス頻度の低い大容量資産(画像、アーカイブ動画、ソフトウェア更新、静的な AI モデルなど)の寿命を延ばします。アクセス頻度の低いコンテンツを、R2 を基盤とする永続オブジェクトストレージへ移します。Least Recently Used (LRU) アルゴリズムによる追い出しを防ぎ、レイテンシの大きいオリジン取得を避けつつ、ストレージの冗長性と耐障害性の要件も満たします。
  • Instant Purge: Cloudflare の 分散パージアーキテクチャ を使い、コンテンツを世界中で約 150ms で無効化できます。Instant Purge は、URL、Tag、Prefix、Hostname によるパージなど、さまざまな粒度に対応します。TTL の期限を待たず、ユーザーはすぐ新しいコンテンツを受け取れます。
  • クラウド接続: Cloud Connector Rules は、特定のオブジェクトストレージやオリジン要件向けに、パブリッククラウドプロバイダー(AWS、Azure、GCP)へのトラフィック経路を簡単にします。プライベートインフラでは、Workers VPC が、パブリッククラウド(例: AWS、Azure)上のプライベートストレージエンドポイントやデータベースへ、パブリック Internet に公開せず直接接続できます。
  • 静的資産のホスティング: アプリケーションの一部全体(フロントエンド資産、画像、大容量メディア、ソフトウェアパッケージを含む)を R2 Object Storage または Workers Static Assets に直接置けます。従来のオリジンサーバーに一度も届かず、エッジから配信できます。追加の ストレージオプション もあります。
図 4: ローカルエッジ、Tiered Cache、長期キャッシュまたはストレージの層と、キャッシュミスおよびフィルの経路を示すキャッシュのデータフロー。
図 4: データフロー - キャッシュ

4. オリジンサーバー

フルパスを辿る必要があるリクエスト(動的コンテンツやキャッシュミス)では、オリジンの構成が最終的なレイテンシ影響を決めます。アーキテクトには主に 2 つの道があります。高性能で耐障害性の高いサーバーレスモデル(オリジンレスとも呼ばれます)を採用するか、従来の Origin Server 向けに接続とセキュリティを最適化するかです。

Serverless: Cloudflare の Developer Platform は、「オリジンレス」モデルによって最適なパフォーマンス階層を実現します。フルスタックアプリケーション を、世界中のグローバルエッジネットワーク上に直接構築・デプロイし、遠いオリジンまでのフルパストラバーサルをなくします。動的リクエストは最寄りの Cloudflare PoP で実行され、R2 Object Storage や D1 Serverless SQLite Database などの統合 エッジストレージ へシームレスにアクセスできます。TTFB が大幅に下がり、厳しい CWV 目標への貢献も大きくなります。さらに、Workers と R2 を使うこのオリジンレスモデルは、高性能なファイル配信に最適な設計です。大容量データセットやメディアの配信に、従来のバックエンドサーバーは不要です。

従来型オリジンの最適化: アプリケーションをオリジンレスモデルへ リファクタリングまたはモダナイズ できない場合は、従来インフラがもたらすレイテンシ影響を最小限にするため、次の最適化が必要です。

  • 接続: Cloudflare は HTTP/2 to Origin で接続し、Connection Reuse で 1 本の永続接続上にリクエストを多重化して、TCP/TLS のオーバーヘッドを減らします。信頼性とセキュリティを高めるには、Cloudflare Network Interconnect (CNI) で自社のネットワークインフラを Cloudflare に直接接続し、パブリック Internet を迂回して、より高性能で安全な体験を得られます。さらに Bandwidth AllianceMicrosoft Azure Routing Preference などのパートナーを含む)を使うと、データエグレス料金を大幅に削減または免除できます。
  • プライベートインフラ: Workers VPCCloudflare Tunnel は、パブリッククラウド上のプライベートストレージエンドポイントやデータベースへ、必ずしもパブリック Internet に公開せず直接接続できます。
  • Load Balancing: Cloudflare Load Balancing で、健全なサーバーへトラフィックを分散します。オリジンが失敗すると、トラフィックは健全なサーバープールへ即座に再ルーティングされます。より単純な分散には、Round-Robin DNS も使えます。
図 5: Serverful(DNS、CDN、Images、Zaraz、Waiting Room、Load Balancing、Network Interconnect)と Serverless(Workers、Workers KV、AI、Queues、R2、D1、Hyperdrive)のアーキテクチャを比較するデプロイモデル。
図 5: デプロイモデル

ツールとリソース

継続的な監視とテストで、各最適化を検証します。測定とログで実際の改善を確認し、回帰を早期に見つけ、クライアントへ影響する前にエッジケースを明らかにします。

このデータを分析するときは、接続制限TCP 接続の動作 を考慮し、Cloudflare クローラー/cdn-cgi/ エンドポイント、および Cloudflare と Google Analytics の間に起きうるデータ差 も織り込んでください。

Cloudflare プラットフォームのツール

  • Cloudflare Observatory: パフォーマンスの主要なダッシュボードです。標準ベースライン用の合成テスト(Google Lighthouse)と、端末や地域ごとの実際のユーザー体験を捉える Real User Monitoring (RUM) を組み合わせます。
  • GraphQL Analytics API: トレンドと Timing Insights に使います。edgeDnsResponseTimeMsoriginResponseDurationMs などの指標を照会し、レイテンシがどこで発生しているかを特定します。
  • Web Analytics: プライバシー優先の、エッジベース RUM 分析専用です。
  • Cache Analytics: Cache Hit Ratio (CHR) と「Requests by Cache Status」を分析し、オリジン負荷の原因となる未キャッシュコンテンツを見つけるために重要です。
  • Ruleset Engine: TCP RTT と TCP フィールド などのネットワーク指標を含む、豊富な フィールド ライブラリを確認し、リアルタイムの接続特性に基づくルーティング、キャッシュ、セキュリティの精密なカスタムロジックを実装します。
  • ログとフォレンジック:
    • Log Explorer: ダッシュボード上でリクエストログをその場照会します。Custom Log Fields で、追加のリクエストヘッダー、レスポンスヘッダー、Cookie を記録できます。
    • Logpush: 任意の Log Output Options 付きで、サードパーティ SIEM へログをエクスポートします。CSV や JSON などの形式に対応します。カスタムフィールドと長期トレンドの分析、大容量ファイルのダウンロード成功率の算出、ダウンロードスループットの分析に不可欠です。
    • Instant Logs: 即時デバッグ向けのリアルタイムトラフィック検査です。
    • Network Error Logging (NEL): サーバー側では見えない、クライアント側の接続問題を捕捉します。

オープンソースと自動化

  • Cloudflare Telescope: 主要ブラウザーすべてでテストを実行できる、オープンソースのクロスブラウザーフロントエンドテストエージェントです。CI/CD パイプラインでのパフォーマンス回帰テスト自動化に使います。
  • Cloudflare Speed Test: ピークスループットの飽和だけを測るのではなく、あらかじめ定義したデータブロックで Cloudflare のグローバルネットワーク上の実利用をシミュレートし、負荷時レイテンシ、ジッター、パケットロスを含む現実的な Internet 接続品質を測ります。
  • Cloudflare Prometheus Exporter: GraphQL Analytics API からメトリクスを取得し、Prometheus 互換形式で公開します。Grafana などのツールで、インフラ指標と並べて Cloudflare のパフォーマンスデータを可視化できます。

外部検証とベンチマークツール

Cloudflare は内部指標を提供しますが、外部(サードパーティ)ツールは、クリティカルレンダリングパスの独立検証と詳細分析に不可欠です。

  • WebPageTest: 詳細なウォーターフォールチャートと、読み込み動作の深い分析。
  • Google PageSpeed Insights: Core Web Vitals 評価(Field と Lab データ)の標準です。
  • DebugBear: 継続監視と速度履歴の追跡に優れます。
  • Pingdom: 単純な、地理ベースの可用性と速度テストに便利です。
  • Treo.sh: Chrome User Experience Report (CrUX) データの高速な履歴可視化。

役に立ちましたか?