パフォーマンス ルーティングを使して複数のリージョンを超えてアプリケーションを最適化する
この音楽ストリーミング アプリのユーザーは、世界中のさまざまなリージョンにいます。 一部のユーザーは、アプリケーションがデプロイされている場所から離れた場所にいます。 ストリーミングのパフォーマンスは、ユーザーのデバイスとホスト間の距離に部分的に依存しています。 最良のパフォーマンスをユーザーに提供するために、複数のリージョンにアプリケーションをデプロイします。 リージョンを追加するので、Traffic Manager で最適なパフォーマンスのエンドポイントにトラフィックを自動的に転送したいと考えます。
"パフォーマンス" によるトラフィック ルーティング方法は、ユーザーと、そのユーザーにとって最適なパフォーマンスのサーバーを接続します。 物理的にユーザーにより近いためパフォーマンスが向上する場合もありますが、インターネットのネットワーク接続の混雑が原因になっている場合もあります。 Azure では、クライアントを接続するためにかかった DNS クエリの待機時間の履歴が、インターネット待機時間テーブルに格納されます。 Azure では、この情報を使って、応答が最も速いサーバー (つまり、待機時間が最短のサーバー) にトラフィックを誘導することができます。 Traffic Manager では、IP アドレス範囲と各 Azure データセンター間のラウンドトリップ時間を追跡することによって、インターネット待機時間テーブルを保持します。 エンドポイントが使用できなくなった場合、Traffic Manager でそれが DNS クエリの応答に含められることはありません。
Traffic Manager プロファイルを構成し、ルーティング方法として [パフォーマンス] を選ぶ以外には、何も行う必要がありません。 エンドポイントの優先順位を設定する必要はありません。Traffic Manager によって、すべてのトラフィックが、応答が最速であるサーバーに自動的にルーティングされます。
次の例では、エンドポイント A の実行がエンドポイント B と同様に停止した場合、顧客のトラフィックは自動的にエンドポイント B にルーティングされます。
クライアントのトラフィックは常にルーティングされます。 基になるサーバーとネットワークに変更がない場合、クライアントは要求を行うごとに同じエンドポイントに転送されます。 より細かい制御 (たとえば、リージョン内で優先するフェールオーバーの選択) が必要な場合は、入れ子になった構成で Traffic Manager を使うことができます。