Objectifs
OBJECTIFS
• Maîtriser l'asynchronisme en ASP.NET Core (async/await, gestion du thread pool) pour améliorer la montée en charge
• Mettre en place du caching efficace (in-memory, distributed cache avec Redis) et réduire la pression sur la base de données
• Concevoir une architecture scalable avec load balancing, reverse proxy et configuration Kestrel/NGINX/IIS
• Instrumenter l'application (logging, métriques, traces) pour analyser les performances en production
• Appliquer les bonnes pratiques de configuration (pooling, connexion SQL, compression, réponse HTTP) pour les environnements cloud
MODALITÉS PÉDAGOGIQUES
• Alternance de concepts théoriques (40%) et de travaux pratiques (60%), individuellement ou en sous-groupes
• La pédagogie active est privilégiée : mise en situation sous forme d'ateliers et cas pratiques, exercices, analyses collectives
• Apports du formateur au regard de son expérience opérationnelle
• Support de formation fourni à chaque participant sous format numérique
• Questionnaire de satisfaction (Respect des objectifs, Contenu et déroulement de la formation, Formateur, Rythme d'apprentissage, Satisfaction globale)
MODALITÉS D'ÉVALUATION
• Quizz préalable sur les pré-requis ASP.NET Core et performances
• Évaluation au cours de la formation : questions par le formateur, ateliers et travaux pratiques, études de cas
• En fin de formation, QCM afin d'apprécier la marge de progression
Description
Fondamentaux de la Performance en ASP.NET Core
Principes de montée en charge et scalabilité
Métriques de performance clés (latence, throughput, utilisation ressources)
Profiling et diagnostic des goulots d'étranglement
Démo : profiler une application ASP.NET Core
Asynchronisme et Gestion du Thread Pool
Modèle async/await en ASP.NET Core et impact sur la montée en charge
Gestion du thread pool, contextes de synchronisation
Deadlocks et pièges courants avec async
Bonnes pratiques d'implémentation asynchrone
Caching In-Memory et Distributed
Stratégies de caching et validation de cache
Caching in-memory avec IMemoryCache
Caching distribué avec Redis et Azure Cache for Redis
Invalidation et gestion de la cohérence des données
Optimisation de la Base de Données
Connection pooling et gestion des connexions
Entity Framework Core : lazy loading, eager loading, projection LINQ
Indexation et optimisation des requêtes SQL
Caching des données métier
Architecture Scalable avec Load Balancing
Patterns de scalabilité horizontale et verticale
Configuration Kestrel, NGINX et IIS pour la haute performance
Load balancing et session stickiness
Reverse proxy et compression HTTP
Health checks et résilience
Instrumentation et Monitoring en Production
Logging structuré avec Serilog
Métriques avec Application Insights ou Prometheus
Tracing distribué et OpenTelemetry
Performances/scalabilité ASP.NET Core formation@artza-technologies.com
Création de dashboards de performance
Alertes et réactivité opérationnelle
Optimisations Avancées
Compression de réponse HTTP et minification
Streaming de données volumineuses
Gestion des resources (mémoire, disque)
Optimization du démarrage (warm-up)
Configuration cloud-native (Kubernetes, container)
Cas d'Étude et Bonnes Pratiques
Mise en situation : optimisation d'une application sous forte charge
Identification des goulots d'étranglement
Mise en place des optimisations prioritaires
Validation des performances et ROI
Retours d'expérience et pièges courants
Conclusion et Stratégie de Performance
Récapitulatif des apprentissages clés
Roadmap de performance pour la production
Maintenance et optimisation continue
Outils et ressources pour poursuivre
Questions/réponses finales
QCM de fin de formation
Conditions d'accès
* Maitrise d ASP.NET Core (MVC ou API), C# et notions de bases de donnees SQL
* Connaissances de base en deploiement web (IIS, Docker ou cloud)
Liste des sessions
ARTZA TECHNOLOGIES
Centre de formation
Lieu de formation





