ウェブサイトでトラフィックが急増した場合、ウェイティングルームはオリジンサーバーを過負荷から保護します。サイトにアクセスできる同時接続ユーザー数を制限し、超過したユーザーを順番にキューに入れることで、ユーザーフローを管理します。
メリット
ウェイティングルームは、柔軟なトラフィック制御を提供してオリジンサーバーを保護します。
オリジントラフィックの動的制御:オリジンサーバーのキャパシティに合わせて、合計アクティブユーザー数と 1 分あたりの新規ユーザー数のしきい値を設定し、サービスのオンライン状態を維持できます。
セッションの永続化:各訪問者の状態を維持するため、サイトから一時的に離れても、再度キューに並ぶ必要はありません。
複数のキューイング方式:先入れ先出し (FIFO) やランダムなど、さまざまな方式でユーザーキューを管理できます。
バイパスルール:特定のリクエストがキューをスキップしてオリジンサーバーに直接アクセスできるように、バイパスルールを設定できます。
制限事項
ESA プロダクトのウェイティングルーム機能は、分散ノードアーキテクチャを使用しており、ネットワークを介したノード間のデータ同期に遅延があるため、この機能は以下のシナリオには適していません。
クライアントリクエストが ESA ノードに到達した時間に基づく厳密な先入れ先出し (FIFO) の順序付けが必要なシナリオ。
コンサートチケットの販売など、1〜2 秒といった非常に短い時間で完了する必要がある需要の高いタイムセール。
アクティブユーザー数を正確に制御する必要があるユースケース。実際のアクティブユーザー数は、設定値から最大 10% ずれる可能性があります。
概要
ウェブサイトで製品プロモーションなどのイベントを開始すると、多数のユーザーが同時にサイトに殺到する可能性があります。ユーザーは最新のデータを取得するためにオリジンサーバーにアクセスする必要があるため、このような高い同時実行性のシナリオではオリジンサーバーがクラッシュするリスクがあり、ビジネスの可用性に大きな影響を与える可能性があります。この問題に対処するため、ESA は駅のように機能するウェイティングルームサービスを提供します。ウェイティングルームを作成することで、同時にオリジンサーバーにアクセスできるユーザー数を制限し、順番を待っているユーザーをウェイティングルームに割り当てることができます。ウェイティングルーム内のユーザーは、待合室の乗客のように、オリジンサーバーへの「電車」に乗るのを順番に待っています。
チケットに番号が記載されているように、Cookie を使用してキュー内の各ユーザーの位置を追跡できます。ウェイティングルームは、駅の発車案内板のように機能し、ユーザーにキューのステータスをリアルタイムで更新情報として提供します。
仕組み
クライアントリクエストが ESA POP に送信された後
ESA ノードのキャッシュがヒットした場合、ESA ノードはキャッシュされたコンテンツを直接クライアントに返します。
ESA ノードのキャッシュがミスした場合、クライアントリクエストはコンテンツを取得するためにオリジンサーバーに送信されます。ESA ノードは、クライアントリクエストの URL を設定されたウェイティングルームの照合ルールと照合します。
リクエストがウェイティングルームルールに一致しない場合、POP はそれを直接オリジンサーバーに送信します。
リクエストがウェイティングルームルールに一致する場合、ESA はトラフィックがオリジンフェッチのしきい値に達したかどうかを確認します。このしきい値は、合計アクティブユーザー数と 1 分あたりの新規ユーザー数によって決まります。
しきい値に達していない場合、POP はリクエストをオリジンサーバーに送信します。
しきい値に達した場合、ESA はリクエストをウェイティングルームのキューに入れます。キューに入れられたリクエストは、選択されたキューイング方式に従ってオリジンサーバーに送信されます。
利用可能状況
ウェイティングルーム機能は、Premium および Enterprise プランで利用できます。一部の機能には、Enterprise プランで利用可能な Waiting Room プロ版が必要です。有効にするには、お問い合わせください。
機能 | Premium | Enterprise |
基本的なウェイティングルーム機能 | ||
ウェイティングルームの数 | 1 | デフォルトで 1。Waiting Room プロ版では最大 10。 |
複数のホスト名とパス | デフォルトで 1。Waiting Room プロ版では最大 50。 | |
カスタムテンプレート | Waiting Room プロ版で利用可能。 | |
セッション更新の無効化 | Waiting Room プロ版で利用可能。 | |
JSON フレンドリーな応答 | Waiting Room プロ版で利用可能。 | |
カスタムキューのステータスコード | ||
キューイング方式 | 先入れ先出し (FIFO) のみサポートされています。 | デフォルトで先入れ先出し (FIFO) がサポートされています。Waiting Room プロ版ではすべてのキューイング方式が利用可能です。 |
ウェイティングルームルール | Waiting Room プロ版では最大 5 ルール。 | |
ウェイティングルームイベント | Waiting Room プロ版では最大 5 イベント。 | |
SEO クローラーのバイパス |