PTS 3.0:可観測性をサポートする次世代性能試験サービス

著者:シャオ・チャンジュン(瓊谷)

皆さんこんにちは、Alibaba Cloud Cloud Native Application Platform、愛称 Qionggu の Xiao Changjun です。今回のテーマは「観測可能な祝福を備えた次世代パフォーマンス テスト サービス」です。パフォーマンス テストについてはよく知られており、パフォーマンス テストは、システムの機能を評価し、システムの弱点を特定し、システムのチューニングを実行し、システムの安定性を検証するための重要な手段となっています

パフォーマンス テストの一般的なプロセスは、データの構築、シナリオの構成、ストレス テストの開始、ストレス テストの結果の取得です。ただし、テスト受講生は、パフォーマンス テストがそれほど単純ではないことも知っています。また、次の問題にも直面しています。

1. 耐圧試験前の影響範囲の評価と、耐圧試験の爆発半径を正確に制御する方法。

2. ストレス テストとビジネス システムの関連指標を監視し、現在のシステム パフォーマンスを分析します。

3. 圧力テストが期待を満たさない場合は、パフォーマンスのボトルネックを分析する必要があります。

4. サポート可能な最大容量または現在のパフォーマンスは、現在のストレス テストの結果に基づいて指定する必要があります。これらの問題はすべてのテスト チームが直面していますが、現在のテクノロジーの発展により、これらの問題をより適切に解決するにはどうすればよいでしょうか?

上記の課題に対応して、パフォーマンス ストレス テストの可観測性機能を提案し、上記の問題に対処するためにストレス テスト リンクの可観測性を提案します。

  • まず、ストレス テストを実装する前に、ダイヤル テストを実行し、ダイヤル テストを通じて要求を開始して、ストレス テストのリンク トポロジ全体を構築します。ストレス テスト全体の影響範囲は、リンク トポロジを通じてグローバルに表示できます。
  • 第二に、パフォーマンス指標を観察でき、圧力テストリンクに含まれるモニタリング指標が取得され、各ビジネスインスタンスの圧力テストと水位グラフが自動的に生成され、同時に圧力が測定および観察されます。 。
  • 3 番目に、ストレス テスト リクエストのインジケーターとリンク イベントが集約されて、リンク プロファイリングとインテリジェントな分析が実現され、パフォーマンスのボトルネックが観察可能になります。
  • 最後に、前述のストレス テスト指標と各サービス インスタンスのリソース レベルを通じて、勾配ストレス テスト評価が実行され、システム サービス容量が検証されます。パフォーマンス ストレス テストのオブザーバブルを構築して、ストレス テストからデータ分析までのすべてを実現します。

これに加えて、パフォーマンス テスト PTS 3.0 の目に見える恩恵を利用して、次世代のパフォーマンス ストレス テスト サービスを構築しました。

パフォーマンス テスト PTS 3.0 プラットフォームの全体的なアーキテクチャは 7 つの部分に分かれており、ボトムアップの観点から見ると、基盤となるストレス テスト エンジンは自社開発の PTS エンジンをサポートし、オープン ソースの JMeter ストレス テスト エンジンと完全な互換性があります。エンジンは将来サポートされる予定で、ユーザーは圧力テストを PTS プラットフォームにスムーズに移行できます。ストレス測定指標データを Prometheus と Logs に書き込み、ユーザーがクエリできるように公開し、柔軟なデータ処理に対するユーザーのニーズを満たすためにユーザーが呼び出せる Grafana ディスクを提供します。

ストレステストの準備段階では、パフォーマンステストPTSはアプリケーションリアルタイム監視サービスARMS製品と接続され、アプリケーションリストの取得、インターフェイスの呼び出し、データベースの呼び出し、コンテナ、インフラストラクチャ、トレースなどのデータの取得を含むARMSのさまざまな機能が統合されます。これらのデータ接続を通じて、ストレス テストの構成を簡素化し、ストレス テスト リンク トポロジを構築できます。

ストレス テストの実行フェーズでは、ストレス テスト エンジンはリンク フラグを透過的に送信し、ARMS コール チェーンを開き、ストリーミングを通じて統合された集約処理を実行します。ストレス テスト プロセス中に、Grafana はさまざまなインスタンス インジケーターのストレス テストを提供し、ARMS インテリジェントな洞察とコール チェーン分析機能を使用してパフォーマンスのボトルネック分析を実現し、ストレス テスト中にストレスをかけながら速度調整を実現できます。

ストレス テストが完了すると、詳細なストレス テスト レポートが自動的に生成され、パフォーマンスのベースライン比較とパノラマ スナップショットが提供されます。

全体的なストレス テストの各段階は、クラウド ネイティブの大規模モデルによって提供される自然言語対話を通じてサポートされ、クラウドへのビジネス移行、主要なプロモーション活動、仕様の選択などのシナリオに対応できます。上記の機能により、パフォーマンス テスト PTS 3.0 には次の機能があります。

リアルタイム監視サービス ARMS によってサポートされるストレス テストは完全に観察可能であり、大規模言語モデルによってサポートされるストレス テストはインテリジェントであり、オープン ソース エンジンが完全に採用され、ストレス テスト スクリプト タスクのホスティングが実現されます。以下では、これらの機能の紹介に焦点を当てます。

ストレス テストの可観測性におけるストレス テストのリンクの視覚化

パフォーマンス テスト PTS は ARMS OpenTelemetry サービスに接続されており、追加の構成を行わずに ARMS OT プローブに接続した後に使用できます。ストレス テストを開始する前に、ダイヤル テスト機能を通じてストレス テスト スクリプトのテストとリンク検出が実行されます。これにより、要求されたリンクが通過するコンポーネントを自動的かつ正確に識別し、ダイヤル テスト要求に基づいてリンク トポロジ マップを確立できます。これにより、ストレス テストによって渡されたリンクを直感的に認識し、ストレス テストの影響範囲を明確にすることができます。

ストレス テスト データ ダッシュボード、すべてのリンク インジケーターの完全な監視

パフォーマンス テスト PTS は Grafana ダッシュボードを統合しており、ストレス テスト プロセス中に、ストレス テスト データ ダッシュボードがストレス テスト リンクに基づいて動的に生成され、すべてのリンク インジケーターの完全な監視が実現されます。たとえば、次の監視パネルが対象になります。

  • 事業概要:シーンリクエスト量やビジネスコンバージョン率などのコアビジネス指標を監視します。
  • ストレス テスト市場: TPS、RT、成功率、異常リクエスト数、リクエスト総数、90/95/99 RT などのストレス テスト サービス指標を監視します。
  • アプリケーション監視ダッシュボード:リクエスト リンクのカバーに関連するアプリケーション監視インジケーターが変更されました。アプリケーション ディメンションには、各アプリケーション インスタンスの数、リクエスト数、エラー数、RT などのインジケーターが含まれます。
  • コンテナ監視ダッシュボード:コンテナ サービス監視は、API サーバー、ノード、ポッドなどのコア インスタンス コンポーネントの監視をカバーし、QPS、成功率、ポッドの数、リソース使用量などの指標もカバーします。

さらに、アクセス層 SLB ディスク、ECS インスタンス ディスク、データベース インスタンス ディスクなどがあります。上記のディスクを介して、圧力テストリンクの各インスタンスの水位と状態を監視することができ、このディスクを介して観察しながら速度を調整して、最適な圧力テストの目的を達成できます。

パフォーマンスのボトルネックを観察し、問題の根本原因を迅速に特定できます。

パフォーマンス テストで遭遇する問題の多くは、ストレス テストの結果が期待したほど良くないことです。そのためには、現在のシステムまたはリンク全体のパフォーマンスのボトルネックを段階的に分析する必要があります。パフォーマンス テスト PTS は、アプリケーション リアルタイム監視サービス ARMS のインテリジェントな洞察機能と統合されており、ストレス テスト中に異常イベントを自動的にスクリーニングし、異常イベントの詳細を入力し、イベントと原因に関係するインターフェイスをプラグインします。例外の内容、完全な例外スタック、および例外の発生、回数、例外率、例外時間範囲、コール チェーンおよびその他の情報。コール チェーンの詳細を入力し、例外分析レポートを表示するには、[コール チェーン分析] をクリックします。たとえば、上記のシナリオでは、データベース接続タイムアウトを取得する異常イベントが検出され、呼び出し後のチェーン分析により、異常時のデータベース接続プールの最大使用率が 100% (アクティブな接続の最大数 / 最大数) であることが指摘されました。利用可能な接続の数)、接続プール構成を増やすための提案を提供しました。この機能により、パフォーマンス分析の効率が大幅に向上し、継続的なパフォーマンスチューニングの目的が達成されます。

監視可能なシステム容量、自動化された容量計画と検証

上記の構成と指標データに基づいて、自動化されたキャパシティ プランニングと検証も開始する予定です。まず、圧力試験の勾配の 3 つの段階を見てみましょう。

まず、リソース負荷が高くない場合、TPS とリソース使用量の間には直線的な増加関係があります。

リソース負荷が飽和すると、同時実行数が増加するにつれて、TPS 傾向は安定したままになり、CPU の負荷が急増し始めます。

3 番目に、リソースの負荷がいっぱいになり、同時実行数がシステムが処理できる最大容量ポイントを超えると、TPS の傾向と CPU が大幅に変動し、サービスが利用できなくなります。この容量評価方法では、ストレス テストの前に予想される同時実行数を設定できます。上記の自動識別されたリンク コンポーネントと組み合わせることで、各インスタンスの予想される最大リソース水位のしきい値を同時に設定できます。圧力は段階的に増加します。予想されるトラフィックに必要なリソース インスタンスの数を計算し、キャパシティ プランニングを実行すると、リソースのしきい値に到達することが計算できます。次に、リソース負荷制限に達するまでの圧力をさらに高め、この数のリソース インスタンスでサポートされる最大同時実行性を計算し、容量評価を実行します。

生成 AI をサポートし、ストレス テストの閾値を下げる

上記は、ARMS 製品との緊密な統合を通じて、ストレス テストの包括的な可観測性を実現し、継続的なモニタリングとフィードバックを実現し、より詳細なパフォーマンス分析を実行し、パフォーマンスの問題を最適化することで、ストレス テストの出力の価値を最大化します。パフォーマンス テスト PTS 3.0 は、Alibaba Cloud のネイティブ大規模言語モデルとも組み合わされて、自然言語対話型メソッドを通じてインテリジェントなストレス テストを実現します。

生成 AI を通じて、パフォーマンス テストの指示を分析し、ストレス テスト タスクを作成し、スクリプトのデバッグを完了して、ストレス テスト タスクを実行します。フルリンクの観点から、動的アイコンを表示し、アプリケーション システムの全体的なパフォーマンス ステータスを観察します。パフォーマンスのボトルネックを特定し、問題を特定し、ボトルネックの根本原因を発見します。また、大規模なモデルを使用して、ストレス テスト レポートの詳細な分析と解釈を実行し、ストレス テストの概要などを提供することもできます。

次に、完全なデモビデオを作成します。

JMeter エコシステムをホストしてストレス テストの価値を最大化する

機能のアップグレードに加えて、オープンソースはパフォーマンス テスト PTS の中核となる製品価値です。現在、パフォーマンス テスト PTS は、JMeter ストレス テスト エンジンのホスティングをサポートしており、このプラットフォームには、ストレス テストの価値を最大化するための可観測性、インテリジェンス、その他の機能がすでに備わっています。

JMeter スクリプトは、ストレス テストのためにパフォーマンス テスト PTS コンソール ページに直接アップロードできます。スクリプトのアップロード後、プラットフォームはスクリプトを解析し、依存する jar パッケージを自動的にダウンロードして完成させます。これにより、ユーザー構成コストが削減され、それによってテストの成功率が向上します。ストレステスト。また、JMeter ストレス テスト構成は、便利なウォーターフォール フロー構成、トップダウンのイマーシブ構成、基本構成とオプションの高レベル構成の分離を提供するためにさらに最適化されています。これにより、ユーザーの構成を理解するコストが削減され、ストレス構成の難しさが軽減されます。テストシナリオ。以前に提供されていたオブザーバブルとの統合機能は、JMeter ストレス テストでもサポートされており、ストレス テストの完了後、レポートが自動的に生成され、プラットフォーム ストレス テストが再利用され、パフォーマンス分析結果が提供されます。JMeter ストレス テスト エンジンを再利用しながら、プラットフォームを通じて、より安定した大規模で価値のあるストレス テスト エクスペリエンスを得ることができます。

パフォーマンス テスト PTS は引き続きオープンであり、OpenAPI を提供し、統合および統合される機能を備え、クラウド サービスを強化し、ユーザーに適した仕様のインスタンスを推奨します。たとえば、ファンクション コンピューティング製品では、パフォーマンス テスト PTS によって提供される関数パフォーマンス検出を使用して、単一インスタンスのパフォーマンスの上限を取得し、同時実行構成の難しさを軽減し、適切なインスタンス仕様をユーザーに推奨し、使用コストを削減できます。関数コンピューティング。マイクロサービス エンジン MSE 製品では、サービス パフォーマンスの問題を発見するための Dubbo などのサービス パフォーマンス テストをサポートし、ゲートウェイ パフォーマンスの上限を取得するためのクラウド ネイティブ ゲートウェイ パフォーマンス テストをサポートします。

現在、パフォーマンス テスト PTS は、世界中の 22 の地域からストレス テストを開始でき、最大数百万の同時実行と数千万の最大 TPS をサポートし、世界規模の大規模ストレス テストをリアルタイムで開始する要件を満たし、数万のサービスを提供します。世界中の企業の。

Broadcom が既存の VMware パートナー プログラム Deepin-IDE バージョン アップデートの終了を発表 、古い外観を新しい外観に置き換える 周 紅逸: 紅蒙ネイティブは間違いなく成功する WAVE SUMMIT は 10 回目のセッションを迎え、温信宜燕氏が最新情報を公開します! ヤクルト社、95Gデータ流出を確認 2023年プログラミング言語で最も人気のライセンス 「2023年中国オープンソース開発者報告書」正式リリース Julia 1.10正式リリース Fedora 40は/usr/binと/usr/sbinを統合予定 Rust 1.75 .0リリース
{{名前}}
{{名前}}

Ich denke du magst

Origin my.oschina.net/u/3874284/blog/10452088
Empfohlen
Rangfolge