パフォーマンス テストは、アプリケーションまたはサイトが一般に公開される前に実行される手順の 1 つでした。 安定したスムーズなアプリケーションは、基本的なマイルストーンであり、優れた消費者体験の必需品です。 しかし、ビジネスが拡大し、 アプリケーションのトラフィックが増加するにつれて、複数のエラー、ページとアプリケーションの読み込み時間の遅延、最悪の場合、完全なクラッシュなど、ユーザーエクスペリエンスが低下する傾向があります。 トラフィックの多い時間帯にウェブ ページまたはアプリケーションが正常に動作することを確認するには、パフォーマンスのボトルネックをよりよく理解し、適切な改善を行うために、実際のシナリオをシミュレートできる広範なロードテストソリューションが必要です。

ロード テスト スクリプトの作成を開始する前に、ユーザー パターンとアプリケーションの使用状況の分析は、ロード テストの計画プロセスの 重要な手順です 。 これは、通常のトラフィック時間とピーク時のトラフィック時間が存在する場所を理解するのに役立ち、最終的には、ロード テスト中に同時ユーザーの適切なランプアップ速度と期間を構成するときに役立ちます。 これらのパターンを鋭く理解して実行されるロード テストは、より正確な結果を得るのに役立ち、後でテスト結果を確認するときに正確な最適化に役立ちます。

アプリケーションごとにユーザーパターンとアプリケーションの使用状況が異なるため、一般的なトラフィックパターンを完全に理解することで、同時ユーザーがアプリケーションにアプローチして使用する方法をより適切に理解できるため、ランプアップおよびランプダウン戦略を定義できます。 先に進む前に、ランプアップとランプダウンの意味を理解しましょう。

ランプアップとランプダウンとは何ですか?

ロード テスト中のランプ アップ速度は、新しい同時ユーザーがアプリケーションにアクセスしようとする速度です。 通常、リアルタイムでは、すべてのアプリケーションには独自のピーク時間があり、同時ユーザーはピーク時間の開始前にゆっくりと増加する傾向があります。 ピーク トラフィックが一連の時間に触れる速度は、負荷テストのランプ アップ速度と呼ばれます。 私たちの目標は常に、ランプアップ速度をユーザーパターンにできるだけ近づけることです。

同様に、負荷テスト中のランプダウンは、ピーク時間の終わりに、同時ユーザーの減少が見られる傾向があり、ランプダウンは時系列プロット上のユーザーのドロップの速度になります。 最良の結果を得るには、同じ戦略を使用してアプリケーションをロードテストする必要があります。

フラットラインロードテストとは何ですか?

フラット ライン ロード テストとは、同時実行ユーザーのセットでロード テストを開始し、すべてのユーザーを一度にオンボーディングし、同時ユーザー数を一定時間維持し、同時実行ユーザー数を 0 にしてテストを終了することを意味します。 フラットライン テスト は、アプリケーションが突然の負荷にさらされたときにシステムがどのように動作するかを見つけるのに役立ちます。 ただし、応答時間、メモリ使用率、CPU 使用率などのメトリックは、突然のトラフィックの最も高い側にあり、ユーザー数が最も低くなるため、実際のメトリックに近い値を示さない場合があります。

ランプアップとランプダウンの利点

  • テスト スクリプトは実際のユーザー パターンと動作を模倣し、同時ユーザー数が安定して増加すると、アプリケーションの動作を理解するのに役立ちます。
  • ランプアップとランプダウンは、サーバーが要求が増加傾向にあるのを見て、負荷を管理するためにより多くのサーバーをスピンアップするので、サーバーの自動スケーリングをテストするのに役立ちます。
  • これは、CPU使用率、メモリ使用率などのサーバメトリックのリアルタイム動作に近い動作を反映し、同時ユーザーの増加に基づいてCPU消費量が増加しています。
  • 同時ユーザー数が安定したペースで増加するにつれて、サーバーはより多くのフリースレッドを生み出す傾向があり、タスクの配布がより良くなるので、応答時間は実稼働環境で見られるものに近くなります。

ベスト プラクティスとロード テスト設計戦略

アプリケーションでは、異なる時間帯に分散した同時ユーザー数が増えるにつれて、同様のロード テスト シナリオを生成し、インフラストラクチャが不適切な処理を開始する段階を確認できます。 これは、アプリケーションのブレークポイントを見つけるのに役立ち、アプリケーションの スケーラビリティを事前に理解するのに役立ちます。

ロード カーブ テスト戦略を使用すると、同時ユーザー数を徐々に増やし、指定した時間間隔ごとにユーザーを増やすことができます。 この戦略は、負荷曲線のピーク時のインフラストラクチャの動作とボトルネックを理解し、アーキテクチャ全体のどの特定のコンポーネントが壊れやすいかなど 、重要な洞察を共有するのに役立ちます。 ロード テスト カーブでボトルネックを見つけることで、 アーキテクチャの他の部分にカスケード効果が見られるかどうかもわかります。 これは、アプリケーションシステム全体を最適化するのに役立ち、生産のダウンタイムと 顧客体験から私たちを救うことができる重要な調査結果になります。

予想されるロード テストの同時実行ユーザーを達成し、システムが必要な負荷でスムーズに実行されたら、それらの同時ユーザーとの継続的なロード テストを継続することを検討する必要があります。 負荷曲線のピークを達成した後、一定の負荷でテストすることは、アプリケーションの並列スレッドの同期、新しいスレッドの発生に関連する問題や最適化を見つけるのに役立ちます。 アプリケーション スレッドが強制終了し、新しいタスクの開始が遅れる場合があります。 一定のロード テストは、簡単にこれらの問題を見つけるのに役立ちます。

適切なロード テスト戦略でロード テストを実行することがいかに重要であるかを見てきたように、市場には、簡単なランプ アップとランプ ダウン 制御、およびテスト期間の定義をサポートする複数のツールがあります。 LoadViewが簡単なテスト構成とセットアップ プロセスをユーザーに提供し、テストの実行から最適な結果を得る方法について説明します。

ランプアップとランプダウン戦略

Loadview は、ブラウザーベースのロード テスト ソリューションで、Web アプリケーション、Web ページ、API、およびストリーミング メディアのロード テストをサポートします。 このソリューションでは、テストの要件に基づいてロード テストを簡単に構成できます。 テスト対象のアプリケーションの準備ができたら、テスト シナリオを作成し、複数の戦略を使用してロード テストを実行できます。 LoadView には、さまざまな If ロード テスト カーブを実行するオプションが用意されていますが、特定の数の同時ユーザーを処理し、特定のランプ アップ期間とランプ ダウン期間で指定した時間にわたって増加する数を遅らせる場合は、ロード ステップ カーブがこのシナリオに最適なオプションです。

開始する同時ユーザーを開始し、事前定義された時間間隔で毎分ユーザー数を増やす Raise By アクションを使用してユーザーを増やすことができます。 または、ユーザーは [下位] アクションを選択して、毎分ユーザー数を減らすこともできます。 同様に、一定の負荷を実現するために、LoadView には [保留] アクションと呼ばれるオプションが用意されており、特定の数の必要な同時ユーザーでテストを実行し続けます。

手順を構成したら、次の部分は、テストを実行するためのペイロードと地理的リージョンの設定です。

ランプアップ負荷タイプ

上の画像でわかるように、 LoadView ユーザーが選択できる他の 2 つの荷重曲線オプションがあります。 それらは、目標ベースの曲線と動的調整可能な曲線です。 それぞれに特定の機能と目的があります。 これらの荷重曲線タイプの詳細と、それらをいつ使用するかをご覧ください。 適切なタイプの荷重曲線 の選択 に関するナレッジベース記事をお読みください。

結論:ユーザー負荷の増減の重要性

戦略を設計し、アプリケーションの実際の使用パターンに従うことで、 LoadView などのツールを使用して適切な問題を適切なタイミングで見つけることができます。 この全体的な分析と負荷テストは、アプリケーションとビジネスに何倍ものメリットをもたらす可能性があります。 今日、この記事の過程で、最もよく使用されるランプアップおよびランプダウン戦略の1つとその利点を理解しました。 また、LoadView テスト シナリオでのブラウザー ベースの操作を使用して、アプリケーションを大幅に成長させる方法を達成およびベンチマークする方法も理解しました。 今すぐ LoadView をお試しください