エッジへのレイテンシも重要です。キャッシュに保存された結果をここから配信します。提供するコンテンツにもよりますが、最終的に取得しなければならないのはデータのほんの一部だけなので、多くのラウンドトリップはここで早くも終了する可能性があります。サービス階層を使用すると、このレイテンシが大幅に高くなる可能性があります。ネットワークに入ります。リソースが存在する場所です。ネットワーク内部で発生するものです。アプリのレイテンシこれはリクエストに対するアプリの応答によって生じるレイテンシであり、アプリがリクエストの処理に要する時間が含まれます。レイテンシ要件はアプリによって異なります。レイテンシの問題がユーザーにとってそれほど重要視されないアプリもあります。エクスペリエンスは損なわれない可能性があります。エクスペリエンスに大きな影響を及ぼす可能性があります。このようなタイプのアプリはユーザーに近い複数のリージョンにデプロイします。パターンこのセクションでは、さまざまなデプロイモデルがレイテンシ要因にどのように影響するかについて説明します。単一リージョンへのデプロイ次の図は、単一リージョンへのデプロイを示しています。アプリがグローバルなユーザーベースを持つ場合でも、多くの場合、単一のリージョンが最良の選択です。デプロイにはレイテンシが低いという利点がありますが、その管理の複雑さという欠点を補うほどのメリットはないかもしれません。レイテンシを短縮することは可能です。レイテンシには影響しません。複数のリージョンの分散フロントエンドと単一リージョンのバックエンド次の図は、複数のリージョンにフロントエンドを分散し、バックエンドを単一リージョンに限定するデプロイモデルを示しています。サーバーへのレイテンシが短縮されるとともに、複数のリージョン間でデータを同期する必要がないという利点があります。レイテンシが低下します。レイヤをデプロイしているアプリや、データの書き込みを非同期に処理するアプリが該当します。バックエンドへの完全なラウンドトリップが必要なアプリの場合、このモデルを使用するメリットはありません。レイテンシを最小限に抑えることができます。このモデルでは、すべてのデータをローカルに保存してアクセスできるようにしなければならないため、複雑さが増します。リクエストに応答するため、すべてのリージョン間でデータを完全に複製する必要があります。オプションがあります。つのリードレプリカ(読み取りレプリカ)が配置されます。インスタンスに対する低レイテンシのデータ読み取りアクセスを提供します。オプションもあります。サービスを実行する場合は、データを独力で複製する必要があります。世界中のデータを一貫して同期させることは非常に難しいため、このレプリケーションは大仕事です。つのリージョンのみで非同期書き込みによってデータベースへの書き込みを行い、他のリージョンではそのデータベースの読み取り専用レプリカをホストする方が管理は楽です。)に協力を求めることをおすすめします。レイテンシを維持できます。次の図に示す複数の並列アプリは、そのすべてがフロントエンドとバックエンドで構成されており、ユーザーは正しいアプリに振り向けられます。サイト間で共有されているデータはほんの一部だけです。小売ビジネスを営む場合、異なる国のドメインを通じて異なるリージョンでユーザーにサービスを提供し、必要なときにのみ製品やユーザーのデータを同期しながら、それらすべてのリージョンで並列サイトを運営できます。ローカルサイトではローカルの在庫状況を管理し、ユーザーは国のドメインを選択することでローカルにホストされたサイトに接続します。別の国のドメインにアクセスしたユーザーは、正しいドメインにリダイレクトされます。ロビーサービスのみをグローバルに提供してユーザーに自分のロケーションに近いゲームルームやゲームワールドを選択してもらい、ゲームルームやゲームワールド間でデータを共有しないようにすることができます。SaaS(Software-as-a-Service)の提供です。データの場所は、アカウントの作成時にユーザーのロケーションまたはユーザーの選択に基づいて決定します。ログインしたユーザーはロケーションに固有のサブドメインにリダイレクトされ、該当するリージョンのサービスを使用します。ユーザーとリージョン間のレイテンシを最適化するどのデプロイモデルを使用するかにかかわらず、最適化手法を組み合わせて、エンドユーザーが体感するレイテンシを短縮できます。以外の手法ではアプリに変更を加える必要があります。サービス階層を提供しています。ネットワークを通じてトラフィックを配信することで低レイテンシを実現します。レイテンシを短縮するため、アプリのサービス提供パスのすべての部分で使用することをおすすめします。グローバル負荷分散プロダクトを使用するときにも、プレミアム階層ネットワーキングは不可欠です。使用すると、バックエンドの処理能力に余裕のある最も近いリージョンにユーザーを自動的にリダイレクトできます。レイテンシが短縮されます。トラフィックを簡単に終了できます。レイテンシをさらに短縮することもできます。サービスからの応答をキャッシュに保存してください。フロントエンドとバックエンドが同じリージョンにある場合は、時間のかかるクエリも少なくなるため、アプリのレイテンシは短縮されます。レイテンシを最適化する手法を使用できます。一部のアセットを事前に読み込む、データをアプリ内にキャッシュ保存する、といった方法が考えられます。可能であれば、リクエストの数を減らしたり、情報を並行して取得したりすることで、アプリが情報をフェッチする方法を最適化することもできます。リソースの最適な配置を決定します。対象が新しいアプリか既存のアプリかによって、使用する戦略は異なります。ネットワークへのレイテンシを測定します。リージョンからのレイテンシを見積もります。ミリ秒で見積もります。倍程度であると推測します。人口密度の低いリージョンでは、ネットワークが理想的な経路からもっと大きく離れている可能性もあります。ネットワーク内の機器の通過によって増加するレイテンシは、リージョン間の距離を見るときには通常、無視してかまいません。リージョンへのレイテンシを見積もるのに役立ちます。既存ユーザーへのレイテンシを測定する同様のユーザーベースを持つ既存のアプリがある場合は、レイテンシをより正確に推定できるツールがいくつかあります。リージョンへのレイテンシを測定するよう依頼します。ウェブサイトも測定に役立つことがあります。以外でホストされている運用中のアプリがある場合は、アクセスログのデータを使用してユーザーの実態を大まかに把握します。ログには国や都市の情報が含まれる場合があり、これを使用してレイテンシを見積もることもできます。リージョンからの到達可能性とレイテンシをテストします。オクテットをランダム化して、アプリへのレイテンシが同程度である別のデバイスからレスポンスを取得してみます。既存のアプリがある場合、レイテンシ情報を収集する方法がいくつかあります。対するヘッダーを有効にします。とバックエンドのレイテンシを含めます。提供されている指標の一部として取得します。ネットワークのトポロジに留意してください。トラフィックがネットワークに入る場所。トラフィックがキャッシュされる場所。リソースを配置できる場所。リージョン間の接続性。デプロイするリージョンを決定する際は、リージョン間のトポロジを考慮に入れてください。グローバルなユーザーベースを持つアプリを単一のリージョンにデプロイする場合は通常、いずれかの米国リージョンでこのアプリをホストするのが最適です(米国は他のほとんどのリージョンに接続しているため)。多くの大陸間が直接接続されていますが、接続されていない大陸もあります。ヨーロッパとアジア間は接続されていないため、ヨーロッパとアジア間のトラフィックは米国を経由します。アプリが複数のリージョンでホストされており、データを同期する必要がある場合は、それらのリージョン間のレイテンシに注意してください。このレイテンシは時間とともに変化する可能性がありますが、通常は安定しています。ウェブサイトを利用してリージョン間の現在のレイテンシを把握します。すべてをまとめるここまで、レイテンシ要件、可能なデプロイモデル、ユーザーベースの地理的分布を見てきた中で、これらの要因が特定のリージョンへのレイテンシにどのように影響するかが理解できました。そこでいよいよ、アプリをリリースするリージョンを決定します。さまざまな要因を評価する正しい方法というものはありませんが、以下の段階的な方法論がリージョンの決定に役立ちます。特定のリージョンへのデプロイを妨げる、レイテンシに関連しない要因(価格やコロケーションなど)があるかどうかを確認します。そのような要因があれば、リージョンの候補リストから該当するリージョンを削除します。レイテンシ要件とアプリの一般的なアーキテクチャに基づいて、デプロイモデルを選択します。終端を併用することが最適な選択肢となる場合があります。選択したデプロイモデルに基づき、ユーザーベースの地理的分布とレイテンシの測定結果に基づいてリージョンを選択します。アクセスが必要な場合は、このロケーションに最も近いリージョンにデプロイします。つの国または地域である場合は、代表ユーザーに最も近いリージョンにデプロイします。ユーザーベースがグローバルな場合は、米国のリージョンにデプロイします。デプロイの場合:ユーザーの地理的分布とアプリのレイテンシ要件に基づいて、ユーザーに近いリージョンを選択します。ユーザーで特定の目標レイテンシが達成されるようにします。ある特定の地理的場所のユーザーは、インフラストラクチャが制限されているという理由で、他の場所のユーザーよりレイテンシに対する忍耐力が高いことがよくあります。レイテンシが複数のリージョンでほぼ同じである場合は、料金が決め手になることがあります。エクスペリエンスを提供し、ユーザーベースの地理的分布が変化した場合は同じプロセスを繰り返します。リージョンとゾーンについて確認する。レイテンシの最適化について学習する。