Google Cloud Well-Architected Framework のパフォーマンス最適化の柱におけるこの原則では、パフォーマンスを継続的にモニタリングして改善するうえで役に立つ推奨事項が示されています。
アプリケーションをデプロイした後、ログ、トレース、指標、アラートを使用してパフォーマンスを継続的にモニタリングします。アプリケーションが成長し、進化するにつれて、これらのデータポイントのトレンドを使用して、パフォーマンス要件を再評価できます。パフォーマンスを維持または改善するために、いずれはアプリケーションの一部を再設計する必要が生じる場合があります。
原則の概要
パフォーマンスを継続的に改善するには、安定しているモニタリング ツールと戦略が必要です。Cloud オブザーバビリティ ツールを使用すると、レイテンシ、スループット、エラー率、リソース使用率などの主要パフォーマンス指標(KPI)を収集できます。クラウド環境では、アプリケーション、ネットワーク、エンドユーザー エクスペリエンスで詳細なパフォーマンス評価を行うさまざまな方法が用意されています。
パフォーマンスの向上は、多角的なアプローチを必要とする継続的な取り組みです。パフォーマンスの向上に役立つ主要なメカニズムとプロセスは以下のとおりです。
- 明確な方向性を示し、進捗状況をトラッキングできるように、ビジネス目標に沿ったパフォーマンス目標を定義します。具体的で(specific)、測定可能な(measurable)、達成可能な(achievable)、現実の問題に直結する(relevant)、期限付き(time-bound)の SMART 目標を設定します。
- パフォーマンスを測定して改善が必要な領域を特定するために、KPI 指標を収集します。
- システムの問題を継続的にモニタリングするために、モニタリング ツールで可視化されたワークフローを使用します。アーキテクチャ プロセスのマッピング手法を使用して、冗長性と非効率性を特定します。
- 継続的な改善の文化を構築するために、従業員の成長をサポートするトレーニングとプログラムを用意します。
- 積極的で継続的な改善を促すために、社員と顧客にインセンティブを与えて、アプリケーションのパフォーマンスに関するフィードバックを継続的に提供してもらいます。
推奨事項
モジュラー設計を推進するには、以下のセクションの推奨事項を検討してください。
明確なパフォーマンスの目標と指標を定義する
ビジネスの目標に沿った明確なパフォーマンス目標を定義します。これには、アプリケーションのアーキテクチャと各アプリケーション コンポーネントのパフォーマンス要件を深く理解する必要があります。
コアビジネス機能とユーザー エクスペリエンスに直接影響する最も重要なコンポーネントを優先的に最適化します。これらのコンポーネントが引き続き効率的に実行され、ビジネスニーズを確実に満たせるように、具体的で測定可能なパフォーマンス目標を設定します。パフォーマンス目標としては、レスポンス時間、エラー率、リソース使用率のしきい値などがあります。
この事前対応型のアプローチにより、潜在的なボトルネックを特定して対処し、リソースの割り当てを最適化することが可能になり、最終的にはユーザーにシームレスで高パフォーマンスのエクスペリエンスを提供できます。
パフォーマンスの追跡
クラウド システムのパフォーマンスの問題を継続的にモニタリングし、潜在的な問題に対してアラートを設定します。モニタリングとアラートを使用すると、ユーザーに影響が及ぶ前に問題を検出して修正することが可能となります。アプリケーション プロファイリングは、ボトルネックの特定とリソース使用量の最適化を行ううえで役立ちます。
効果的なトラブルシューティングとネットワークの最適化を容易にするツールを使用できます。Google Cloud Observability を使用して、CPU 使用量、メモリ使用量、ネットワーク使用量が多い領域を特定します。これらの機能は、デベロッパーが効率を高め、費用を削減し、ユーザー エクスペリエンスを向上させるのに役立ちます。Network Intelligence Center は、ネットワーク インフラストラクチャのトポロジを可視化し、レイテンシの大きいパスを特定するのに役立ちます。
継続的な改善を奨励する
アプリケーションとユーザー エクスペリエンスの両方にメリットをもたらす継続的な改善の文化を構築します。
クラウド サービスにおけるパフォーマンス手法に関するスキルと知識を向上させるトレーニングと開発の機会を従業員に提供します。実践共同体(CoP)を設立し、メンタリングとコーチングのプログラムを提供して、従業員の成長を支援します。
パフォーマンス管理を事後対応型ではなく事前対応型にするために、従業員、顧客、関係者からの継続的なフィードバックを奨励します。パフォーマンスに関する KPI を追跡調査し、これらの指標をリーグ表の形式でチームに頻繁に提示することで、プロセスをゲーム化する方法を検討できます。
パフォーマンスとユーザーの満足度を長期的に把握するために、ユーザー フィードバックを定量的かつ定性的に測定することをおすすめします。HEART フレームワークを使用すると、次の 5 つのカテゴリにわたってユーザーからのフィードバックを収集できます。
- 満足度
- エンゲージメント
- 導入
- リテンション
- タスク成功
このようなフレームワークを使用すると、データドリブンのフィードバック、ユーザー中心の指標、行動につながるインサイト、目標の明確な理解によってエンジニアを動機付けることができます。