使用するツール - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

使用するツール

k6

k6 は、負荷テストを整理、実行、分析するためのサポート、ロードソースのホスティング、および統合されたウェブインターフェイスを提供する無料のツールです。

k6 は Go で記述され、単一の実行可能ファイルとして出荷されます。ソースシステムのすべてのコアを使用します。のサブセットを使用して複雑なシナリオ JavaScript を実行し、テストプロファイルが含まれます。で、効率的に JavaScript 実行される複雑なテストシナリオを作成できます。出力は概要でも、複数のターゲットストアの詳細な出力でもかまいません。拡張機能はサポートされていますが、公式の k6 拡張機能を除いて、適切に管理された拡張機能はほとんどありません。

サーバーが十分に大きければ、ほとんどの負荷テストを単一のサーバーから実行できます。これにより、複雑な分散負荷テストを回避できます。

ロードテスト結果は、Amazon Managed Service for Prometheus Amazon CloudWatch、または別のモニタリングサービスに転送して、より詳細な分析を行うことができます。シナリオコードに成功基準を含めて、継続的インテグレーション (CI) パイプラインで実行することもできます。

Vegeta

Vegeta 負荷テストは別のコンセプトを採用しています。同時実行を定義したり、システムに負荷をかけたりする代わりに、特定のレートを定義します。また、このツールはシステムの応答時間とは無関係に負荷を作成します。

これは、応答時間やテストの影響を打ち消して、バックプレッシャーのシナリオやバックエンドプロセスの長期的な動作を調べる最適な方法です。このツールは複雑な動作はできませんが、リクエスト間で情報を渡す必要のない任意の一連のリクエストを実行できます。

Vegeta は Go アプリケーションのライブラリとしても使用できます。これにより、強力なバックエンドで独自の負荷テストを実装できます。ただし、独自のテストを実装するよりも別のツールを使用する方が理にかなっている場合もあります。

Hey および ab

Apache HTTP サーバーのベンチマークツールである Heyab は、コマンドラインから指定の負荷を単一のエンドポイントで実行できる基本的なツールです。ツールを実行するサーバーがある場合、これは負荷を発生させる最も速い方法です。ローカルのラップトップでも動作しますが、高い負荷が発生するほど強力ではない場合があります。

Apache JMeter

Apache JMeter は、長年の経験で培われたパワーホースです。長年にわたって、Apache JMeter は信頼性を向上させ、機能を追加してきました。グラフィカルインターフェイスを使用することで、プログラミング言語を知らなくても複雑なテストを作成できます。などの企業は Apache JMeter BlazeMeter をサポートしています。

での分散負荷テスト AWS

AWS ソリューションでの分散負荷テストは、カスタム Apache JMeter スクリプトの使用をサポートします。 AWS ソリューションで分散負荷テストを使用すると、Apache JMeter スクリプトをアップロードしてクラウドでテストを実行できます。もう 1 つの利点は出力サポートです。イベントをタイムストリームデータベースにストリーミングし、その上で高度なクエリを実行できるため、完全なテストの実行に関する詳細なインサイトを得ることができます。