# クリティカルパス分析 ## 定義 クリティカルパス分析は、分散トレース上でエンドツーエンドレイテンシを実際に支配する RPC/処理区間を特定し、ユーザー影響の大きい遅延やエラーを優先的に扱う手法である。マイクロサービスでは全 RPC エラーがユーザー影響を持つわけではないため、単純な件数ではなくクリティカルパス上にあるかが重要になる。 ## 横断的知見 - [[CRISP]] は Uber の大規模マイクロサービスにクリティカルパス分析を適用し、下流診断や最適化対象の優先順位づけを高速化した。([[@2022__USENIX ATC__CRISP - Critical Path Analysis of Large-Scale Microservice Architectures]]) - Uber の RPC エラー分析は、エラーの 29.35% が非致命的でエンドユーザーに影響しないことを示し、クリティカルパス上のエラーかどうかを区別する必要を示した。([[@2024__PACMCAS__The Tale of Errors in Microservices]]) - [[分散トレーシング]] の価値は、全呼び出しを記録することだけでなく、どの呼び出しがユーザー影響の経路にあるかを推定できる点にある。 ## 未解決の問い - サンプリングされたトレースだけでクリティカルパスを推定すると、希少だが重要な経路を取り逃がさないか。 - クリティカルパス上ではない非致命的エラーを、将来のリスクや capacity waste としてどう扱うべきか。 - LLM エージェントの RCA に、クリティカルパス制約をどのようにツール/プロンプトとして渡すべきか。 ## 関連 - 概念: [[分散トレーシング]] / [[非致命的RPCエラー]] / [[Fault Localization]] / [[根本原因分析]] / [[マイクロサービスコールグラフ]] - ソース: [[@2022__USENIX ATC__CRISP - Critical Path Analysis of Large-Scale Microservice Architectures]] / [[@2024__PACMCAS__The Tale of Errors in Microservices]] ## 出典 - [[@2022__USENIX ATC__CRISP - Critical Path Analysis of Large-Scale Microservice Architectures]] - [[@2024__PACMCAS__The Tale of Errors in Microservices]]