PERF04-BP06 ネットワーク要件に基づいてワークロードのロケーションを選択する - パフォーマンス効率の柱

PERF04-BP06 ネットワーク要件に基づいてワークロードのロケーションを選択する

ネットワークのレイテンシー短縮、スループット向上、ページの読み込み時間とデータ転送時間の短縮による最適なユーザーエクスペリエンス提供に向けて、リソースプレイスメントのオプションを評価します。

一般的なアンチパターン:

  • すべてのワークロードリソースを 1 つの地理的場所に統合する。

  • ワークロードのエンドユーザーではなく、自分の所在地に最も近いリージョンを選んでいる。

このベストプラクティスを活用する利点: ユーザーエクスペリエンスは、ユーザーとアプリケーションの間のレイテンシーの影響を大きく受けます。適切な AWS リージョンと AWS のプライベートなグローバルネットワークを使用することで、レイテンシーを減らし、リモートユーザーにより良いエクスペリエンスを提供できます。

このベストプラクティスを活用しない場合のリスクレベル:

実装のガイダンス

Amazon EC2 インスタンスなどのリソースは、AWS リージョンAWS ローカルゾーン、AWS Outposts または AWS Wavelength ゾーン内のアベイラビリティーゾーンに配置されます。このロケーション選択が、特定のユーザーのロケーションからのネットワークレイテンシーとスループットに影響を及ぼします。Amazon CloudFront および AWS Global Accelerator などのエッジサービスを利用して、エッジロケーションにコンテンツをキャッシュするか、AWS グローバルネットワークを介してユーザーにワークロードへの最適なパスを提供することにより、ネットワークパフォーマンスを改善することもできます。

Amazon EC2 にはネットワーク用のプレイスメントグループが用意されています。プレイスメントグループは、レイテンシーを減らすためにインスタンスを論理的にグループ化したものです。サポートされているインスタンスタイプを使ったプレイスメントグループと Elastic Network Adapter (ENA) を使用することにより、ワークロードを低レイテンシー、低ジッターの 25 Gbps ネットワークに参加させることができます。プレイスメントグループは、低ネットワークレイテンシー、高ネットワークスループット、またはその両方からメリットを得るワークロードに推奨されます。

レイテンシーの影響を受けやすいサービスは、AWS グローバルネットワークを使用して Amazon CloudFront などのエッジロケーションで提供されます。これらのエッジロケーションは一般に、コンテンツ配信ネットワーク (CDN) およびドメインネームシステム (DNS) などのサービスを提供します。これらのサービスをエッジで使用することにより、ワークロードがコンテンツまたは DNS 解決のリクエストに低いレイテンシーで応答できるようになります。これらのサービスは、コンテンツのジオターゲティング (エンドユーザーの位置に基づいて異なるコンテンツを提供) などの地理的なサービス、またはエンドユーザーを最寄りのリージョンに誘導するレイテンシーベースルーティング (最小レイテンシー) も提供します。

エッジサービスを使用してレイテンシーを低減し、コンテンツキャッシングを有効化します。これらのアプローチから最大限のメリットを得るために、DNS と HTTP/HTTPS の両方でキャッシュ制御を正しく設定してください。

実装手順

  • VPC のネットワークインターフェイスとの間で行き来する IP トラフィックに関する情報を把握します。

  • ワークロードのネットワークアクセスパターンを分析して、ユーザーがアプリケーションをどのように使用しているかを特定します。

    • Amazon CloudWatchAWS CloudTrail などのモニタリングツールを使用して、ネットワークアクティビティに関するデータを収集します。

    • データを分析して、ネットワークアクセスパターンを特定します。

  • 以下の主な要素に基づいて、ワークロードのデプロイに適切なリージョンを選択します。

    • データがある場所: 大量のデータを使用するアプリケーション (ビッグデータや機械学習など) では、アプリケーションコードをできるだけデータの近くで実行してください。

    • ユーザーがいる場所: ユーザー向けアプリケーションの場合は、ワークロードのユーザーに近いリージョン (1 つまたは複数) を選択します。

    • その他の制約:「ワークロードのリージョンを選択する際の考慮事項」で説明されているように、コストやコンプライアンスなどの制約を考慮します。

  • ビデオレンダリングなどのワークロードは AWS Local Zones を使用して実行します。Local Zones では、エンドユーザーの近くにコンピューティングリソースやストレージリソースがあるというメリットが得られます。

  • AWS にデプロイしている他のワークロードとシームレスに連携しながら、オンプレミスに残す必要があるワークロードには AWS Outposts を使用します。

  • 高解像度ライブビデオストリーミング、Hi-Fi 音源、拡張現実および仮想現実 (AR/VR) などのアプリケーションでは、5G デバイス向けに超低レイテンシーが必要です。このようなアプリケーションには AWS Wavelength を検討します。AWS Wavelength は AWS のコンピューティングおよびストレージサービスを 5G ネットワーク内に組み込み、超低レイテンシーアプリケーションの開発、デプロイ、スケーリングのためのモバイルエッジコンピューティングインフラストラクチャを提供します。

  • ローカルキャッシュまたは AWS キャッシュソリューションを頻繁に使用するデータに使用すると、パフォーマンスを向上させ、データ移動を削減し、環境への影響を低減できます。

    サービス どのようなときに使うか

    Amazon CloudFront

    画像、スクリプト、動画などの静的コンテンツだけでなく、API 応答やウェブアプリケーションなどの動的コンテンツのキャッシュに使用します。

    Amazon ElastiCache

    ウェブアプリケーションのコンテンツをキャッシュします。

    DynamoDB Accelerator

    DynamoDB テーブルにインメモリアクセラレーションを追加します。

  • 以下のように、ワークロードのユーザーの近くでコードを実行できるサービスを使用します。

    サービス どのようなときに使うか

    Lambda@Edge

    オブジェクトがキャッシュにないときに開始される、コンピューティング負荷の高いオペレーションに使用します。

    Amazon CloudFront Functions

    HTTP(S) リクエストまたはレスポンス操作など、短時間実行の関数で実行できるシンプルなユースケースに使用します。

    AWS IoT Greengrass

    接続されたデバイスのローカルコンピューティング、メッセージング、データキャッシュを実行します。

  • アプリケーションによっては、最初のバイトのレイテンシーとジッターを低減してスループットを向上することによる、固定エントリポイントまたはより高いパフォーマンスが必要となります。このようなアプリケーションは、静的エニーキャスト IP アドレスおよび TCP ターミネーションをエッジロケーションで提供するネットワーキングサービスの恩恵を受けることができます。AWS Global Accelerator を使用すると、アプリケーションのパフォーマンスを最大 60% 向上させ、マルチリージョンアーキテクチャの迅速なフェイルオーバーを実現できます。AWS Global Accelerator では、1 つまたは複数の AWS リージョンでホストされるアプリケーションの固定エントリポイントとして機能する静的エニーキャスト IP アドレスを利用できます。このような IP アドレスを使用すると、トラフィックはユーザーのできるだけ近くの AWS グローバルネットワークに入ることができます。AWS Global Accelerator は、クライアントとクライアントに最も近い AWS エッジロケーションの間で TCP 接続を確立することにより、初期接続設定時間を短縮します。TCP/UDP ワークロードのパフォーマンス向上、マルチリージョンアーキテクチャの迅速なフェイルオーバーを実現するには、AWS Global Accelerator の使用を検討します。

リソース

関連するベストプラクティス:

関連ドキュメント:

関連動画:

関連する例: