Flex Gateway新着情報
Governance新着情報
Monitoring API Managerアプリケーションのパフォーマンスを検証する手順は次のとおりです。
テストの前提条件を確認する。
ベストプラクティスに従う。
パフォーマンステストを実行する。
パフォーマンステストを実行する前に、以下を行ってください。
Mule アプリケーションとその機能が想定通りに機能することを確認します。フローが正しくないと偽陽性データが生成されることがあります。
以下の質問を自問してパフォーマンステストの条件を確立します。
平均とピーク時のワークロードは?
ユースケースで対処する必要のある特定のニーズは?
大量のトランザクションを高優先度で処理する場合のスループット。
アクティビティの急増がユーザーエクスペリエンスに影響する場合の応答時間またはレイテンシー。
多くのユーザーが同時に接続する状況をサポートする必要がある場合の同時実行数。
アプリケーションが 1 MB を超えるペイロードを転送、キャッシュ、保存、または処理する場合の大規模メッセージの管理。
許容できる最小スループットは?
許容できる最大応答時間は?
テストのベストプラクティスでは、テスト環境、テストツール、コンポーネントの分離、代表的なワークロードを考慮する必要があります。
自己制御された環境を使用して、再現性と信頼性の高い一貫したデータを取得します。
3 台の専用ホストで構成されるインフラストラクチャを使用する:
オンプレミステストの場合は、Mule アプリケーション専用のホストを使用してアプリケーション情報を分離することで、他の実行プロセスによる干渉を防止します。
実行する負荷クライアントツールがボトルネックとならずに負荷を提供できるように、分離された専用のホストを使用します。
データベース、Tomcat、JMS、ActiveMQ などのバックエンドサービスを実行するための専用のホストを使用します。本番環境でアプリケーションが使用しているのと同じホストを使用してテストします。
オンプレミステストの場合は、負荷クライアント、ランタイムサーバー、バックエンドサーバーを同じ Anypoint Virtual Private Cloud (Anypoint VPC) で実行することで、ネットワークレイテンシーを抑えます。
CloudHub テストの場合は、CloudHub ワーカーとは別でありながらも同じリージョンに存在する専用マシンで負荷クライアントとバックエンドサーバーを実行することで、ネットワークレイテンシーを抑えます。
優先接続された安定したネットワークを使用する。
顧客の環境にデプロイされている同じアプリケーションより性能が上回る可能性があるため (特に仮想化されている場合)、ノート PC は使用しない。
テストで使用するコンポーネントによって、ユースケースで大きな違いが出ることがあります。現実的なパフォーマンスデータが得られるように、最も適切な負荷インジェクターとバックエンドサービスを、顧客環境と同じ設定で使用してください。そして、ユースケースに最適な負荷テストツールを選択してください。MuleSoft パフォーマンスチームは Apache JMeter を使用していますが、提供されている多くの市販またはオープンソースの負荷ツールの中から、シングルスレッド、マルチスレッド、非ブロックなど、さまざまな実装に合わせて好きなツールを選んでください。 適切なテストツールを選んで使い始めた後は、一貫してテスト結果が得られるように、同じツールを使い続けてください。選んだツールがユースケースに適していないと判断してツールを変更した場合は、テストをすべてやり直してください。
テストの実行を開始する前に、スループットの計算結果に影響する可能性のある、接続、切断、エラーパーセンテージの設定を削除しておくのが理想的です。前のセクションのベストプラクティスを考慮して、テストを実行します。
アプリケーションのボトルネックを特定して検証するためのパフォーマンステストを適用します。
反復的なアプローチで、見つけた問題の改善に取り組みます。
CloudHub アプリケーションの場合は、Mule フローと設定をチューニングします。
オンプレミスアプリケーションの場合:
Mule フローと設定をチューニングします。
JVM、GC、などをチューニングします。
オペレーティングシステム変数をチューニングします。
テストを数回実行して、信頼できる結果を得ます。「チューニングの推奨事項」の項目を 1 つずつ変更してテストを再実行してください。
テスト結果を確認します。