Thèse de doctorat (2025)
|
Libre accès au plein texte de ce document Conditions d'utilisation: Tous droits réservés Télécharger (5MB) |
Résumé
Les systèmes distribués modernes, notamment ceux basés sur les architectures à microser-vices, constituent aujourd’hui l’épine dorsale d’un grand nombre d’applications critiques. Ces systèmes traitent quotidiennement des millions, voire des milliards, de requêtes et doivent maintenir des niveaux élevés de performance et de fiabilité. Cependant, la complexité crois-sante de ces architectures rend le diagnostic de problèmes de performance particulièrement difficile. Les solutions classiques de traçage, bien que puissantes, collectent souvent un volume considérable de données dont une grande partie est non pertinente pour l’analyse recherchée. Cette collecte massive entraîne une surcharge importante, augmente les coûts de stockage et de traitement, et complique la localisation des causes profondes des problèmes. Face à ces défis, cette thèse propose un cadre de traçage adaptatif basé sur les ob-jectifs, conçu pour ajuster dynamiquement la collecte de données en fonction du but précis de l’analyse. L’idée centrale est que tous les problèmes de performance ne nécessitent pas le même type d’observation et qu’un traçage intelligent, orienté par un objectif spécifique, permet de réduire le bruit, limiter la surcharge et accélérer le diagnostic. Objectifs et questions de recherche Le travail de recherche s’articule autour de plusieurs objectifs. • Concevoir un mécanisme de traçage capable d’adapter dynamiquement la configuration et la granularité des données collectées en fonction du type de problème à diagnostiquer. Développer une méthodologie de détection efficace pour les antipatrons de perfor-mance logicielle (SPAs), qui représentent des motifs récurrents de conception ou d’implémentation dégradant les performances. Réduire la surcharge de traçage sans compromettre la capacité à identifier les causes profondes des anomalies. Évaluer l’intégration de techniques d’apprentissage automatique et semi-supervisé pour automatiser la classification et l’explication des problèmes détectés. Méthodologie La recherche se décline en trois axes principaux : 1. Détection d’anomalies légère via TraceLens La première contribution, TraceLens, repose sur l’analyse du chemin critique d’exécution des requêtes pour identifier les événements responsables des latences. Cette approche minimise la surcharge en se concentrant uniquement sur les points ayant un impact direct sur les temps de réponse, plutôt que d’analyser l’intégralité des traces collectées. 2. Traçage adaptatif basé sur les objectifs La seconde contribution introduit un mécanisme de traçage adaptatif, guidé par une tax-onomie des SPAs. Cette taxonomie permet de définir des scénarios de traçage spécifiques selon le type de dégradation recherchée, par exemple les SPAs de communication (Blob, tâches de service excessives) ou les SPAs liés à la charge. Le système ajuste automatique-ment les points de traçage, la granularité et la portée de collecte pour optimiser la pertinence des données. 3. Détection automatisée des SPAs par apprentissage machine La troisième contribution consiste à appliquer des méthodes d’apprentissage automatique, en particulier des approches semi-supervisées, pour identifier et classifier les SPAs à partir des traces collectées. Les caractéristiques extraites incluent des métriques de charge, de latence, de volume de données échangées et de fréquence d’appels. L’utilisation d’étiquetage faible permet de limiter le besoin en annotations manuelles, tout en maintenant une performance élevée de détection. Validation expérimentale L’évaluation a été menée sur DeathStarBench, un banc d’essai open source reproduisant des scénarios réalistes de microservices.
Abstract
Modern distributed systems generate massive volumes of trace data, making performance di-agnosis costly, intrusive, and often inefficient. Traditional tracing approaches either capture excessive irrelevant information or miss critical events necessary for root cause analysis. This thesis proposes a goal-based adaptive tracing framework that selectively collects trace data aligned with specific diagnostic objectives, with a primary focus on detecting Software Performance Anti-patterns (SPAs)—recurring design and implementation flaws that de-grade system performance. The research begins with TraceLens, a lightweight anomaly detection method that uses ex-ecution critical path analysis to identify latency-contributing events with minimal overhead. Building on this, the work introduces an adaptive goal-based tracing method that leverages an SPA taxonomy to guide tracepoint activation, tracing scope, and workload selection. This approach enables a hierarchical, iterative localization of performance issues, progressively refining trace collection toward the likely root cause. Two main phases are explored: User-space level tracing, using statistical analysis to detect SPAs such as traffic jams, ramps, and single-user problems. Hybrid tracing, combining user-level and kernel-level data to capture more complex communication-related SPAs, including Blob and Excessive Service Tasks (EST). Machine learning and semi-supervised techniques are integrated to classify SPA-related anoma-lies with minimal manual labeling. Experimental validation on the DeathStarBench microser-vice benchmark shows that the proposed methods achieve high detection accuracy (up to 92%) while imposing as little as 2.7% overhead, making them suitable for deployment in CI/CD pipelines and production environments. This work contributes a modular, scalable, and cost-efficient performance diagnosis frame-work that can adapt to multiple goals, from SPA detection to resource monitoring and anomaly analysis, offering a practical path toward smarter and lighter observability in dis-tributed systems. Keywords: goal-based tracing, adaptive tracing, performance anti-patterns, distributed systems, anomaly detection, critical path analysis, hybrid tracing, microservices.
| Département: | Département de génie informatique et génie logiciel |
|---|---|
| Programme: | Génie informatique |
| Directeurs ou directrices: |
Michel Dagenais |
| URL de PolyPublie: | https://publications.polymtl.ca/71012/ |
| Université/École: | Polytechnique Montréal |
| Date du dépôt: | 20 févr. 2026 13:43 |
| Dernière modification: | 20 févr. 2026 20:43 |
| Citer en APA 7: | Nourollahi, M. (2025). A Goal-Based Adaptive Tracing Method for Detecting Performance Anomalies and Anti-Patterns in Distributed Systems [Thèse de doctorat, Polytechnique Montréal]. PolyPublie. https://publications.polymtl.ca/71012/ |
|---|---|
Statistiques
Total des téléchargements à partir de PolyPublie
Téléchargements par année
Provenance des téléchargements
