この AWS ソリューションの内容
Distributed Load Testing on AWS ソリューションは、大規模および負荷時のソフトウェアアプリケーションテストを自動化して、リリース前に性能上の潜在的なパフォーマンスの問題を特定するのに役立ちます。このソリューションは、一定のペースでトランザクションレコードを生成する数多くの接続ユーザーを作成およびシミュレートします。サーバーをプロビジョニングする必要はありません。また、このソリューションでは、複数の AWS リージョンにまたがってテストを実行することができます。
利点
AWS ソリューションの概要
下の図表は、このソリューションの実装ガイドと付属の AWS CloudFormation テンプレートを使用して、自動的にデプロイできるアーキテクチャを示しています。

AWS での分散負荷テストのアーキテクチャ
AWS CloudFormation テンプレートは、次のリソースをデプロイします。
1.Amazon API Gateway API を使用して、ソリューションのマイクロサービス (AWS Lambda 関数) を呼び出します。
2.マイクロサービスでは、テストデータを管理しテストを実行するためのビジネスロジックを提供しています。
3.これらのマイクロサービスは、Amazon Simple Storage Service (Amazon S3)、Amazon DynamoDB、AWS Step Functions と通信し、テストシナリオを実行して、そのテストシナリオの詳細とテストシナリオを実行するためのストレージを提供します。
4.Amazon Virtual Private Cloud (Amazon VPC) のネットワークトポロジには、AWS Fargate で実行中のソリューションの Amazon Elastic Container Service (Amazon ECS) コンテナが含まれています。
5.このコンテナには、アプリケーションのパフォーマンステスト用の負荷を生成する Taurus 負荷テスト オープンコンテナ規格 (OCI) に準拠しているコンテナイメージが含まれています。Taurus はオープンソースのテスト自動化フレームワークです。コンテナイメージは、AWS が Amazon Elastic Container Registry (Amazon ECR) のパブリックリポジトリでホストしています。
6.AWS Amplify によるウェブコンソールは、静的ウェブホスティング用に設定した Amazon S3 バケットにデプロイされます。
7.Amazon CloudFront はソリューションのウェブサイトバケットのコンテンツに対し、セキュアなパブリックアクセスを提供します。
8.ソリューションは初期設定時にデフォルトのソリューション管理者ロールを作成し、顧客が指定したユーザーの E メールアドレスにアクセス招待を送信します。
9.Amazon Cognito ユーザープールは、コンソールと Amazon API Gateway API へのユーザーアクセスを管理します。
10.ソリューションをデプロイした後、ウェブコンソールを使って、一連のタスクを定義するテストシナリオを作成できます。
11.マイクロサービスはこのテストシナリオを使用して、指定された AWS リージョンで AWS Fargate タスク上で Amazon ECS を実行します。
12.結果を Amazon S3 と DynamoDB に保存するだけでなく、テストが完了すると、出力が Amazon CloudWatch にログされます。
13.ライブデータオプションを選択すると、ソリューションでは、テストが実行された各リージョンについて、テスト中に AWS Fargate タスクの Amazon CloudWatch ログが Lambda 関数に送信されます。
14.Lambda 関数は、メインスタックがデプロイされたリージョンで、AWS IoT Core の対応するトピックにデータを公開します。ウェブコンソールはそのトピックを購読し、ウェブコンソールでテスト実行中にデータを確認することができます。
AWS での分散負荷テスト
バージョン 3.0.0
最終更新:2022年8月
作成者: AWS
見積りデプロイ時間: 15 分
その他のリソース
関連コンテンツ
民間企業であるか公共部門のサービスであるかに関わらず、ユーザーによる負荷の増加に応じてアプリケーションを拡張できるという確信が必要です。AWS での分散負荷テストにより、アプリケーションテストを自動化し、大規模に実行する方法を理解し、アプリケーションをリリースする前にボトルネックを修正できます。