すべてのプロダクト
Search
ドキュメントセンター

Edge Security Acceleration:ウェイティングルームを作成して開始する

最終更新日:Mar 01, 2026

タイムセール、販売促進、人気イベントなどにより、ご利用のサイトで高同時接続トラフィックが発生すると、オリジンサーバーが過負荷になる可能性があります。これにより、応答が遅くなったり、サーバーがダウンしたりすることがあります。ウェイティングルーム機能は、エッジで仮想キューを作成することでオリジンサーバーを保護します。オリジンのキャパシティを超えるユーザーリクエストをキューに入れることで、安定したサーバーパフォーマンスを確保し、明確な待ち時間を提供することでユーザーエクスペリエンスを向上させます。以下の手順に従って、サイトのウェイティングルームを迅速に設定し、有効化します。

5分でタイムセール用の基本的なウェイティングルームを設定

オリジンサーバーが最大 300 の同時接続ユーザ数を処理できるとします。サーバーを保護するために、promo.example.com/flash-sale で開催される今後のタイムセールページ用にウェイティングルームを設定する必要があります。

操作手順

  1. ESA コンソールで、サイト管理 を選択し、サイト 列で対象のサイトをクリックします。

  2. 左側のナビゲーションウィンドウで、トラフィック > ウェイティングルーム を選択します。

  3. ウェイティングルーム エリアで、ウェイティングルームを作成 をクリックします。以下のコアパラメーターを入力します:

    • ウェイティングルーム名flash-sale-room

    • ホスト名とパスpromo.example.com/flash-sale

      • サブドメインpromo

      • パス: flash-sale

    • カスタム Cookie__aliwaitingroom_flash_sale (これはキューイングの認証情報として機能します。)

    • アクティブユーザーの総数300 (この値は、オリジンの同時処理キャパシティと一致させる必要があります。)

    • 1 分あたりの新規ユーザー数300 (この設定により、イベント開始時にユーザーが迅速に受け入れられるようになります。)

    • セッション持続時間5

結果の確認

待合室はデフォルトで有効になっています。promo.example.com/flash-sale にアクセスする同時接続ユーザ数が アクティブユーザーの総数 の上限である 300 を超えると、後続のユーザーは推定待機時間を表示する待機ページに転送されます。

image

ウェイティングルームの作成

ウェイティングルームをよりきめ細かく制御するには、以下の詳細な手順に従ってください。

ステップ 1:ウェイティングルームの設定ページに移動

  1. ESA コンソールで、サイト管理 を選択し、サイト 列で対象のサイトをクリックします。

  2. 左側のナビゲーションウィンドウで、トラフィック > ウェイティングルーム を選択します。

  3. ウェイティングルーム エリアで、ウェイティングルームを作成 をクリックします。

    image

ステップ 2:基本設定

このステップでは、ウェイティングルームの名前やパスなどの基本情報を定義します。image

パラメーター

説明

ウェイティングルーム名

ウェイティングルームに、promo_activity_room のように識別しやすい名前を設定します。

ホスト名とパス

ウェイティングルームがアクティブになる正確な URL を定義します。サイトには複数のホスト名 (ドメイン名) を設定できます。このルールは、指定した [ホスト名][パス] にのみ適用されます。

:ホスト名が event.example.com で、パスが /route の場合、ウェイティングルームは event.example.com/route へのリクエストにのみ適用されます。

カスタム Cookie

ユーザーのキューステータスを識別し、追跡するために使用される認証情報です。Cookie 名には、__aliwaitingroom_ という固定のプレフィックスが付きます。サフィックスはカスタマイズできます。

__aliwaitingroom_promo_user

ステップ 3:ルームのキャパシティとレートの設定

このステップでは、ウェイティングルームのキャパシティとユーザーが受け入れられるレートを定義します。これは、オリジンサーバーを保護するためのコア設定です。image

パラメーター

説明

アクティブユーザーの総数

目的:オリジンサーバーに同時にアクセスできる同時接続ユーザー数の最大値を設定します。

説明:この値は、オリジンサーバーの実際の同時処理能力に基づいて設定します。オリジンにアクセスしているアクティブなユーザー数がこのしきい値に達すると、新しいユーザーリクエストはキューに送られます。

注意:最小値は 200 です。オリジンの実際の負荷が 200 未満の場合は、この値を 200 に設定し、1 分あたりの新規ユーザー数 パラメーターを使用して、受け入れレートをより正確に制御します。

1 分あたりの新規ユーザー数

目的:キューからオリジンサーバーへ毎分受け入れられる新規ユーザーの最大数を設定します。これにより、オリジンへの負荷の増加率を制御します。

説明:このパラメーターは、キューが処理される速さを決定します。たとえば、300 に設定した場合、毎分最大 300 人の新規ユーザーが待機ページからオリジンサーバーに移動できます。

注意:最小値は 200 です。この値は、アクティブユーザーの総数 以下である必要があります。

セッション持続時間

目的:ユーザーがキューを離れた後のセッションの有効期間を定義します。

説明:ユーザーがオリジンサーバーへのアクセスに成功した後、このパラメーターで設定された時間内に一時的に離脱 (ページのクローズなど) して戻ってきた場合、再度キューに並ぶ必要はありません。デフォルト値は 5 分です。

セッション更新の無効化

目的:オリジンサーバーとの対話中に、ユーザーのセッション有効期間が自動的に更新されるかどうかを決定します。

注意:このトグルの名前は、その動作とは逆の意味になります。望ましい結果に基づいてオプションを選択してください:

  • オフ (デフォルト):セッション更新を有効にします。ユーザーがオリジンサーバー上でアクティブである限り (継続的にリクエストを送信している限り)、セッションは有効期限切れにならず、キューに戻されることはありません。これはほとんどのシナリオに適しています。

  • オン:セッション更新を無効にします。ユーザーのセッションは、オリジンサーバーに最初に入った瞬間から厳密に計時されます。時間が経過すると、ユーザーがまだアクティブに閲覧していても、再度キューに並ぶ必要があります。これは、タイムセールなど、ユーザーの単一訪問時間を厳密に制御する必要があるシナリオに適しています。

キューイング方式

目的:待機ページからユーザーを受け入れるためのポリシーを選択します。

  • FIFO:リクエストが受信された順にユーザーを受け入れます。これは最も公平なメソッドであり、推奨されるデフォルトです。

  • ランダム:キューからランダムにユーザーを選択してアクセスを許可します。これは、公平性が主要な関心事ではない抽選などのシナリオに適用できます。

  • すべて拒否:すべての新規ユーザーは待機ページに送られ、受け入れられません。これは、イベント前のウォームアップ、システムメンテナンス、またはアクセスを閉鎖する必要がある緊急事態に役立ちます。

  • パススルー:すべてのリクエストはキューをバイパスして、直接オリジンサーバーに送られます。このモードでは、ウェイティングルームは事実上無効になります。これは、イベント後に通常のアクセスを復元したり、機能テストに使用したりできます。

ステップ 4:待機ページのカスタマイズ

このステップでは、ユーザーがキューにいる間に表示されるページコンテンツまたは API レスポンスを設定します。image

パラメーター

説明

タイプ

デフォルトウェイティングルーム:システムが提供する標準の待機ページです。推定待ち時間を自動的に表示します。[デフォルトの言語テンプレート] (英語中国語 (簡体字)、または 中国語 (繁体字)) を選択できます。

カスタムウェイティングルーム:カスタム HTML ページをアップロードできます。この機能を使用するには、営業担当者にお問い合わせください。

  • テンプレートを編集するか、直接 .html ファイル (最大 50 KB) をインポートできます。

  • HTML 内で動的変数 (例:${waitTime}) を使用して、キュー情報を表示できます。

キューのプレビュー

リンクをクリックして、キューイングしているすべてキューイング などのさまざまな状態で待機ページがどのように表示されるかをプレビューします。

JSON レスポンス

目的:アプリやミニアプリなど、ブラウザ以外のクライアントに構造化されたキューステータス情報を提供します。

このトグルを有効にします。クライアントのリクエストヘッダーに Accept: application/json が含まれている場合、ESA は HTML の待機ページの代わりに JSON 形式でキュー情報を返します。パラメーターの詳細については、「JSON レスポンスパラメーターの説明」をご参照ください。

対話フロー

  1. 最初のリクエスト:クライアントは Accept: application/json リクエストヘッダーを付けてターゲット URL にアクセスします。

  2. Cookie の取得と保存ESA のレスポンスヘッダーには Set-Cookie フィールドが含まれます。クライアントは、後続のリクエストの ID 認証情報として使用するために、この Cookie を保存する必要があります。

  3. ステータスのポーリング:クライアントはリクエストにこの Cookie を含める必要があります。レスポンス本文の refreshIntervalSeconds フィールドで指定された間隔で定期的に同じ URL を再リクエストし、キューステータスを更新する必要があります。

  4. オリジンへのアクセス:レスポンス本文の inWaitingRoom フィールドが false に変わると、クライアントはキューを離れます。その後、クライアントは Cookie を使用して通常どおりオリジンリソースにアクセスできます。

レスポンス例

{
  "WaitingRoom": {
    "inWaitingRoom": true,
    "waitTime": 5,
    "waitTimeKnown": true,
    "waitTimeFormatted": "5 minutes",
    "queueIsFull": false,
    "queueAll": false,
    "lastUpdated": "2024-09-10T12:00:00.000Z",
    "refreshIntervalSeconds": 20
  }
}

キューステータスコード

キューにいる間にユーザーが受け取る HTTP レスポンスステータスコードをカスタマイズします。デフォルトは 200 です。必要に応じて、202 などの別のステータスコードに変更できます。

ステップ 5:ウェイティングルームのプレビューと有効化

  1. 前のステップからの設定の概要が表示されます。これにより、設定を確認し、他の機能を設定するかどうかを選択できます。パラメーターが正しいことを確認したら、完了 をクリックしてウェイティングルームを作成します。

    image

  2. ウェイティングルームが作成されると、この機能はデフォルトで有効になります。

    image

  3. 必要に応じて、すべてのリクエストに対して すべてキューイング のオン/オフを切り替えることもできます:

    • オフ:これはデフォルトの状態です。リクエスト数が アクティブユーザーの総数1 分あたりの新規ユーザー数 で定義されたしきい値に達すると、超過したリクエストはウェイティングルームのキューに送られます。

    • オン:すべての新規訪問者はキューに並ぶ必要があります。これは、製品の発売やその他のスケジュールされたイベントの準備に使用できます。

      説明
      • すでにオリジンサーバーにアクセスしているアクティブなユーザーは、セッションを継続できます。セッションが期限切れになる前にキューに戻されることはありません。

      • [すべてキューに入れる] は、イベント設定を含む他のすべてのウェイティングルーム設定をオーバーライドします。

    image

次のステップ

Enterprise ユーザーの場合は、次の高度な機能を使用して、ウェイティングルームをさらに詳細に制御することもできます: