ますます複雑なビジネス・シナリオと異なるシステムアーキテクチャー、要件分析と準備作業の準備に直面し、多くの時間を要します。テストの異なる戦略が、また、我々のテスト結果の期待目標に準拠しています。
このブログは、共通のパフォーマンステスト戦略、並びにそれらのアプリケーションシナリオの私の個人的な理解についての話。。。
一般的なテスト戦略
パフォーマンステストの実装プロセスは、異なるビジネス・シナリオのために、私たちは分析とモデリングのシーンを通過した後、異なるテスト戦略を選択します。シーンのほとんどをカバーし、10のテスト戦略を以下に示します。
1、同時テスト
シミュレーションのクライアント要求、(S)は、システムが並行性の問題があることを確認しながら、単位時間当たり一定量によって開始要求。
PS:ない無脳高い同時実行もしません!!!
2、負荷テスト
(CPU使用率が90%の+に到達するなど)、またはサーバが飽和に達したリソースになるまで圧力要求を増加させるいくつかの指標は、(例えば、操作監視警報閾値または膝のメンテナンスなど)安全閾値に達しています。
負荷試験は、それらが使用されている(また、階段状の圧力測定と呼ばれる)の性能の変曲点を探し、システムが両方の圧力要求異なるテスト環境で実行しているかどうかを確認します。例としては、次のとおりです:
3、能力テスト
負荷テスト戦略では、従来の環境でテスト中のシステムの最大のパフォーマンスを検証する(最大許容可能な性能、必ずしも最良の性能ではありません)。
図4に示すように、リミット・テスト
既存のテスト環境下で、リソース使用率(95%のCPU使用率や高負荷IO非常にビジーまたは値)、ダウンタイムなしのシステムの場合の最大処理能力の限界に関係なく。
PS:、さまざまなビジネスシナリオの下でシステムこのための戦略、比較的小さな割合を使用。
5、構成テスト
連続検証(様々な要因の最適な性能のトレードオフのバランスを見つけなければならない)場合に最適な性能を達成するために、最適な構成のシステム構成(ハードウェア構成パラメータ、等)の様々な態様を調節します。
6、サージ試験
時間または突然の増加要求変動量の同時検証一定期間が大きく、安定したシステムが正常にサービスを提供することができます。
PS:これは(トピックを壊す、などのマイクロブログの離婚、愛など)も、短期的な不確実性のピーク時のトラフィック流入のシーンのために主に使用される比較的小規模なテスト戦略です。
図7に示すように、安定性試験
(負荷試験の同時結果の数、対応する70%にCPU使用率)の混合シナリオにおける同時検証システム性能の一定の数で。
8、バッチテスト
両方の環境でテスト中の検証システム、バッチ処理システム(通常のcrontabまたはジョブをトリガ)運用能力は、生産のビジネスニーズインジケータを満たすことができます。
9、高可用性テスト
マルチノードクラスタまたは分散の場合には、1つ以上のクラスタ・ノードを破壊するシステムは、迅速サービス機能を回復できることを確認します。
10、障害復旧テスト
まだ障害が発生した場合に通常のサービスまたは失敗を提供するために、自己回復能力の能力を維持することができるシステムを確認してください。例えば、下図:
より大きな領域A1、システムの強力な処理能力、大きな面積A2、より良いシステムの安定性、A3より大きな面積、システムのより良好なフォールトトレランス(ジー、図幾分醜いです...)
いくつかの手のアニメーションパフォーマンスモデル図がある前に、あなたはそれが恥ずかしい見つけることができません。。。
第二に、アプリケーションシーン
試験戦略の10種類以上は、適用可能なビジネスおよび試験シナリオによれば、政策目標とシナリオの使用は、参考のために周波数を分割するように見えます。
第三に、経験の声
1、中小チーム:ルーチン試験戦略の選択:並行性、負荷、容量、構成、バッチ処理、安定性、ニーズのほとんどをカバーすることができる高可用性戦略。
2、ビジネスの電気の供給元クラス:高並行性、高可用性、安定性が最優先事項です。
3、ビジネスシナリオ:多くの場合、性能要件は、いくつかのビジネスシナリオが含まれていますが、同時、負荷、容量、安定性、勧告を採択。
4.需要シナリオ:要件分析とシナリオのモデリングが行われ、テスト結果は、多くの場合、大偏差です。
図5に示すように、圧力測定環境:研究環境の選択、製造および推奨される構成は、結果のコストおよび精度でバランスされているデプロイメント環境を、最小限に抑えます。
図6に示すように、試験データ:データ及びホットスポットデータのデータ・カバレッジのいずれかの量または有効性は、試験結果が価値があると判断しています。
7、建設技術:(環境、サービス展開、詳細な監視システム、プロセスフローの問題を含む)のインフラは、左のパフォーマンステストを行うために、完了です。
8、文書の構築:不要なトラブルや反復作業の多くを避けるために、文書やデータ保持の構築に注意を払うようにしてください。
図9は、プラットフォーム:プラットフォームの役割は、プロセスを標準化することで、人々が効率的に、統合されませオーバー追求プラットフォームを行う(ただし、技術的な計画とプログラムの準備がなければならない)一緒に働きます。
10、高い同時実行には脳もしません!!!