Formation applications Java prêtes pour la production animée par Cyrille Le Clerc
Inscription pdf Inscription en ligne Programme PDF Catalogue 2012Présentation
Cette formation originale, organisée autour de 4 ateliers d’une demi-journée chacun, a pour objectif de fournir aux stagiaires les techniques et les éléments clefs pour s’assurer que leur application Java sera prête à être utilisée dans un environnement de production industrialisé. Chaque atelier comprend un volet théorique présentant les éléments clefs du problème de production à adresser, et un volet pratique, dans lequel les stagiaires sont invités à adapter une application exemple pour satisfaire les exigences de production.
Les stagiaires aborderont les questions suivantes :
- Quels sont les qualités qu’un exploitant attend d’une procédure de déploiement d’application Java ?
- Comment rendre une application Web Java robuste, tolérante aux pannes et capable de supporter des pics de trafic sans effondrer ses backends ?
- Comment exposer à une équipe de supervision les indicateurs de bon fonctionnement d’une application Java ?
- Comment améliorer la qualité des logs ?
Cette formation comprend des ateliers sur :
- Le Déploiement
- La Robustesse
- La supervision
- Les logs
Cyrille Le Clerc
Après six années passées chez IBM Global Services, Cyrille a rejoint Xebia pour participer à l’essor des architectures Java légères et des méthodes Agiles.
Convaincu par le modèle “you build it, you run it ©” popularisé par Amazon, Cyrille intervient durant ses missions autant sur les phases de conception au contact des équipes fonctionnelles mais aussi auprès des équipes de développement et des équipes d’exploitation pour assurer le support niveau 3 ou réaliser les mises en production.
Cyrille est membre du projet Apache CXF, un participant actif du Paris Java User Group et auteur de nombreuses publications et notes techniques autour des problématiques de production Java/J2EE.
Retrouvez toutes les publications de Cyrille Le Clerc sur notre blog en suivant ce lien
- Dates 2012 : 14-15 juin, 14-15 novembre
- Prix : 1100€ HT
- Type : Inter-entreprise et intra-entreprise
- Durée : 2 jours
- Public : Architectes, développeurs senior, experts techniques, ingénieurs d’études
- Contact : Tél : +33 (0)1 53 89 99 99
- eMail : info@xebia-training.fr
ATELIER 1 : LE DÉPLOIEMENT
Le déploiement est une cause fréquente de bugs en production et de dérapage des plannings projet. Cette tâche est d’autant plus stressante qu’elle s’accompagne souvent de l’indisponibilité de l’application. Quels sont les qualités qu’un exploitant attend d’une procédure de déploiement d’application Java ?
Dans cet atelier, nous aborderons les sujets suivants :
- Gérer les paramètres de configuration liés à l’environnement.
- Réduire la complexité des composants à déployer.
- Automatiser le build et l’installation pour prévenir les erreurs.
- Assurer la traçabilité des installations.
- Préparer les rollback.
- Diminuer les temps d’indisponibilité.
Exercice : gérer les paramètres dont la valeur change suivant les environnements d’une application Web Java existante.
ATELIER 2 : LA ROBUSTESSE
Augmentation des communications inter-applications, intégration de backends peu préparés à ces accès à la mode SOA, … nos applications sont de plus en plus fragiles alors que les pics de trafic imprévisibles du web ajoutent une exigence inconnue jusqu’alors. Comment rendre une application Web Java robuste, tolérante aux pannes et capable de supporter des pics de trafic sans effondrer ses backends ?
Dans cet atelier, nous aborderons les sujets suivants :
- Les contrôles à effectuer à l’initialisation d’une application, les échecs qui ne doivent pas empêcher un démarrage.
- La prévention des engorgements et des effets domino : timeouts, pools, sémaphores, circuit breakers, etc.
- Fiabilité des backends, mécanismes de retry et indempotance.
- Les modes dégradés en cas d’indisponibilité de backends.
Exercice : protéger l’appel à un backend lent et peu fiable avec des mécanismes de contention et de retry.
BBOF : discussions informelles et concrètes autour des applications Java en production.
Les problèmes de production des applications Java sont peuplés de cas particuliers. Nous nous inspirerons des Birds Of Feather des conférences informatiques pour conclure chaque journée par une discussion à bâtons rompus durant laquelle chacun pourra exposer ses réalités et ses problématiques. N’hésitez pas à apporter votre code et vos schémas d’architecture, nous aurons un rétroprojecteur et un tableau blanc !
ATELIER 3 : LA SUPERVISION
La supervision des applications Java se limite souvent à la recherche de mots clefs dans les fichiers de logs alors que les technologies comme JMX sont maintenant très matures et intégrables à des outils de supervision Open Source. Comment exposer à une équipe de supervision les indicateurs de bon fonctionnement d’une application Java ?
Dans cet atelier, nous aborderons les sujets suivants :
- Les indicateurs de bon fonctionnement d’une application ? Logs vs. compteurs numériques vs. événements.
- Améliorer la supervision en exposant des indicateurs métier et des actions applicatives.
- Techniques d’accès aux indicateurs et actions de supervisions. Le risque des pages web ‘utilitaires’, JMX.Exercice : exposer les indicateurs métier et les actions d’administration d’une application Web Java avec JMX et remonter ces informations sur une solution de monitoring Open Source : Hyperic HQ.
ATELIER 4 : LES LOGS
Souvent incompréhensibles et incomplets bien que trop verbeux, les logs sont un sujet récurrent de friction entre les équipes de développement, de support et d’exploitation. Comment améliorer la qualité des logs ?
Dans cet atelier, nous aborderons les sujets suivants :
- Les rôles des logs : diagnostique, audit et troubleshooting immédiat.
- Générer des messages de log et d’erreurs exploitables.
- Changer la configuration de logging lors de l’exécution d’une application.
- Audit d’une application : informations à tracer, format et support.
- Logs de troubleshooting immédiat : générer des traces très détaillées
- sans saturer les systèmes de fichiers et les outils de sauvegarde.
- Exercice : rationaliser les logs et mettre en oeuvre l’audit d’une application Web Java.
- Synthèse : Caractéristiques des Applications Prêtes pour la Production
Bien qu’il n’existe pas d’architecture universelle et que chaque contexte a ses particularités, il existe des caractéristiques communes aux applications Java prêtes pour la production. BOF : discussions informelles et concrètes autour des applications Java en production
Comme le premier soir, nous reprendrons le rétroprojecteur et le tableau blanc pour aborder les réalités de chacun.