パフォーマンス テストは、アプリケーションまたはサイトが一般公開される前に実行される手順の 1 つです。 安定したスムーズなアプリケーションは、基礎的なマイルストーンであり、優れた消費者体験のために持っている必要があります。 しかし、ビジネスが拡大し、アプリケーションのトラフィックが増加するにつれて、複数のエラー、ページとアプリケーションの読み込み時間の遅さ、および最悪の場合は完全なクラッシュにより、ユーザー エクスペリエンスが低下する傾向があります。 トラフィックの多い時間帯に ウェブ ページやアプリケーションが適切に動作するようにするには、パフォーマンスのボトルネックを理解し、適切な改善を行えるように、実際のシナリオをシミュレートできる広範なロード テスト ソリューションが必要です。
ロード テスト スクリプトの作成を開始する前に、ユーザー パターンとアプリケーションの使用状況の分析は、ロード テストの計画プロセスで重要な手順です。 これにより、通常のトラフィック時間とピーク時のトラフィック時間が存在する場所を把握するのに役立ち、ロード テスト中に適切な速度アップ速度と同時ユーザーの時間を構成する際に役立ちます。 これらのパターンを深く理解して実行されるロード テストは、より正確な結果を得るのに役立ちます。
各アプリケーションにはさまざまなユーザー パターンとアプリケーションの使用状況があるため、一般的なトラフィック パターンを十分に理解することで、同時ユーザーがアプリケーションにアプローチして使用する方法をより適切に理解し、ランプ アップ戦略を定義できます。 前に進む前に、立ち上がって立ち上がって下がって何を意味するのか理解しましょう。
ランプアップとランプダウンとは何ですか?
ロード テスト中の速度の向上は、新しい同時ユーザーがアプリケーションにアクセスしようとする速度です。 通常、リアルタイムでは、各アプリケーションには、同時ユーザーがピーク時間の開始前にゆっくりと増加する傾向がある独自のピーク時間があります。 一連の時間にピーク トラフィックが接触する速度は、ロード テストの速度を上げると呼ばれます。 私たちの目標は、常にユーザーパターンに近い速度でランプアップ速度を一致させる必要があります。
同様に、ピーク時の終わりの間にロードテスト手段中にランプダウン、我々は同時ユーザの低下を見る傾向がある、ランプダウンは、時系列プロット上のユーザーのドロップの速度であろう。 アプリケーションをロード テストして、最良の結果を得るためには、同じ戦略を使用する必要があります。
フラット ライン ロード テストとは
フラット ライン ロード テストとは、同時実行ユーザーのセットでロード テストを開始し、すべてのユーザーを一度にオンボーディングし、同時ユーザー数を一定時間維持し、同時実行ユーザー数を 0 にしてテストを終了することを意味します。 フラット ライン テストは、アプリケーションが突然の負荷を受けたときにシステムがどのように動作するかを見つけるのに役立ちます。 ただし、応答時間、メモリ使用率、CPU 使用率などのメトリックは、突然のトラフィックの最も高い側にあり、ユーザー数が最も低くなるため、実際のメトリックに近い値を示さない場合があります。
ランプアップとランプダウンの利点
- テスト スクリプトは実際のユーザー パターンと動作を模倣し、同時ユーザー数が安定して増加すると、アプリケーションの動作を理解するのに役立ちます。
- ランプアップとランプダウンは、サーバーが要求が増加傾向にあるのを見て、負荷を管理するためにより多くのサーバーをスピンアップするので、サーバーの自動スケーリングをテストするのに役立ちます。
- これは、CPU使用率、メモリ使用率などのサーバメトリックのリアルタイム動作に近い動作を反映し、同時ユーザーの増加に基づいてCPU消費量が増加しています。
- 同時ユーザー数が安定したペースで増加するにつれて、サーバーはより多くのフリースレッドを生み出す傾向があり、タスクの配布がより良くなるので、応答時間は実稼働環境で見られるものに近くなります。
ベスト プラクティスとロード テスト設計戦略
アプリケーションでは、異なる時間帯に分散した同時ユーザー数が増えるにつれて、同様のロード テスト シナリオを生成し、インフラストラクチャが不適切な処理を開始する段階を確認できます。 これは、アプリケーションのブレークポイントを見つけるのに役立ち、アプリケーションのスケーラビリティを事前に理解するのに役立ちます。
ロード カーブ テスト戦略を使用すると、同時ユーザー数を徐々に増やし、指定した時間間隔ごとにユーザーを増やすことができます。 この戦略は、負荷曲線のピーク時におけるインフラストラクチャの動作とボトルネックを理解し、アーキテクチャ全体の特定のコンポーネントが壊れやすいような重要な洞察を共有するのに役立ちます。 ロード テスト カーブでボトルネックを見つけることも、アーキテクチャの他の部分に連鎖的な影響が見当たればわかります。 これは、アプリケーションシステム全体を最適化し、生産のダウンタイムや顧客体験から私たちを救うことができる重要な調査結果になります。
予想されるロード テストの同時実行ユーザーを達成し、システムが必要な負荷でスムーズに実行されたら、それらの同時ユーザーとの継続的なロード テストを継続することを検討する必要があります。 負荷曲線のピークを達成した後、一定の負荷でテストすることは、アプリケーションの並列スレッドの同期、新しいスレッドの発生に関連する問題や最適化を見つけるのに役立ちます。 アプリケーション スレッドが強制終了し、新しいタスクの開始が遅れる場合があります。 一定のロード テストは、簡単にこれらの問題を見つけるのに役立ちます。
適切なロード テスト戦略でロード テストを実行することがいかに重要であるかを見てきたように、市場には、簡単なランプ アップとランプ ダウン 制御、およびテスト期間の定義をサポートする複数のツールがあります。 LoadViewが簡単なテスト構成とセットアップ プロセスをユーザーに提供し、テストの実行から最適な結果を得る方法について説明します。
ランプアップとランプダウン戦略
Loadview は、ブラウザーベースのロード テスト ソリューションで、ウェブ アプリケーション、ウェブ ページ、API、およびストリーミング メディアのロード テストをサポートします。 このソリューションでは、テストの要件に基づいてロード テストを簡単に構成できます。 テストの準備が整ったアプリケーションを準備したら、テスト シナリオを作成し、複数の戦略を使用してロード テストを実行できます。 LoadView には、ロード テストカーブの場合にさまざまな操作を実行するオプションが用意されていますが、特定の同時ユーザー数を処理し、特定のランプ アップおよびランプ ダウン期間で指定した時間にわたって増加の増加を遅くする場合は、このシナリオに最も適した[ロード ステップ カーブ]オプションです。
開始する同時ユーザーを開始し 、”Raise By/昇給 ” アクションを使用してユーザーを増やすことができます。 または、ユーザーは [下限] アクションを選択して、ユーザーの数を 1 分ごとに減らします。 同様に、LoadView は、一定の負荷を達成するために、特定の量の同時ユーザーでテストを実行し続けるために、 保留アクション と呼ばれるオプションを提供します。
ステップを構成したら、次のパートは、テストを実行するペイロードと geo 領域を設定します。
上の画像でわかるように、LoadView ユーザーが選択できるロードカーブオプションは他に 2 つあります。 これらは、ゴールベースのカーブとダイナミック調整可能曲線です。 それぞれに固有の機能と目的があります。 これらの荷重曲線タイプと、それらを使用するタイミングについて詳しくは、こちらをご覧ください。 「適切なタイプの荷重曲線の選択」サポート技術情報記事を参照してください。
結論: ユーザー負荷の増加と減少の重要性
戦略を設計し、アプリケーションの実際の使用パターンに従うと、LoadViewなどのツールを使用して適切なタイミングで適切な問題を見つけるのに役立ちます。 この全体的な分析とロード テストは、アプリケーションとビジネスに対して複数の利点を持つことができます。 私たちは今日、この記事の過程で最も使用されているランプアップとランプダウン戦略とその利点の1つを理解しました。 また、LoadView テスト シナリオでのブラウザー ベースの対話操作、およびアプリケーションの達成とベンチマークの実行方法についても理解しました。 今日はあなた自身のためにビューを試してみてください。