Capgemini Institut 0144742410
24 rue du Gouverneur général Eboué 92136 Issy les Moulineaux
Performance des Applications et du SI Paris
Performance des Applications et du SI Paris
DURéE
2 jours
DATES
11-12 mai 2017
16-17 novembre 2017
LIEU
Paris
PRIX
1 910 € ht (2 292 € ttc)
Sommaire du séminaire
    Séminaires technique Institut Capgemini

    Performance des Applications
    et du SI

    >  Technologies, architectures, méthodes, outils et bonnes pratiques




    En deux journées, un état de l’art complet des meilleures pratiques en matière de performance, en passant en revue tous les aspects : l’architecture applicative, l’infrastructure, la gestion de projet, l’organisation ou encore l’intégration et l’exploitation.

    • Quels principaux leviers permettent d’agir sur les niveaux de performance ?
    • Quelles architectures pour quels niveaux de performance ?
    • Quel est l’impact du Cloud sur la performance des applications ?
    • Pourquoi et comment mettre en œuvre des solutions de clustering ?
    • Comment choisir une base de données NoSQL et quelles sont les contraintes ?
    • Comment peut-on généraliser les tests de performance.

    • Comment aborder un projet de monitoring.
    • Quelle crédibilité pour les nouvelles plateformes serveur Javascript ?
    • Comment vendre et mettre en place une gestion préventive des problèmes de performance.

    Basé sur de nombreux retours d’expériences et illustré par de multiples cas concrets, ce séminaire s’adresse à tous les architectes et consultants qui interviennent sur des applications critiques et recherchent des solutions éprouvées et rapidement applicables sur leurs projets..

    L’intervenant

    Médéric Morel

    Médéric Morel a 20 ans d'expérience dans le domaine des Systèmes d'Information en tant que consultant et directeur technique.

    Il est le fondateur du cabinet Contexeo, une startup spécialisée dans le domaine de la géolocalisation.

    Auparavant, il a dirigé pendant 8 ans les activités de conseil du groupe SQLI, et a également porté l’offre « Performance des Systèmes d’Information », domaine dans lequel il intervient sur de nombreux projets pour des grandes entreprises en France et à l’étranger.

    Il est co-auteur de l’ouvrage Performance des architectures IT (Dunod) et Managing IS complexity publié chez Wiley.



    Les fondements de la performance


    Les quatre piliers de la performance

    • Les temps de réponse.
    • La disponibilité.
    • La robustesse.
    • La scalabilité ou capacité de montée en charge.

    La haute disponibilité

    • Comment exprimer la disponibilité d’une application ?
    • Qu’est-ce que la haute disponibilité en informatique de gestion ?
    • Quelles sont ses conséquences sur les coûts ?

    L’impact des différentes technologies

    • Langages compilés ou langages interpretés ?
    • Comment mettre en œuvre .NET sur des applications critiques ?
    • Quels niveaux de performance pour les autres plateformes (.NET, PHP, NODE.JS, PYTHON ,etc.) ?

    L’organisation

    • Les différents styles de gouvernance : monarchie business, monarchie IT, duopole, etc.
    • L’impact des styles de gouvernance sur la performance du SI.
    • Les nouveaux risques liés à l’externalisation des études et de la production. Recommandations pour éviter les problèmes courants.

    L’influence des pratiques de gestion de projet


    L’approche curative

    • Le tuning des plates-formes.
    • L’optimisation de code.
    • Les démarches de refactoring.
    • Les conséquences sur les coûts et les délais.

    L’approche préventive

    • Sortir du cycle infernal audit/refactoring/ réécriture.
    • Comment formaliser les exigences de performance ?
    • Des check lists pour chaque étape du projet.
    • Le rôle clé des tests et de la phase d’intégration.
    • Quel ROI pour l’approche préventive ?

    Les architectures applicatives


    Modèle en couches et types d’architectures

    • Les conséquences du non-respect du modèle en couches.
    • Des systèmes centraux aux architectures n-tiers, des niveaux de performance très variables.

    Où trouve-t-on les problèmes de performance ?

    • L’impact des frameworks.
    • Le rôle central des bases de données.
    • Quel est l’impact des solutions de mapping objet/relationnel sur la performance des accès aux données ?
    • Les problèmes spécifiques aux architectures distribuées.

    L’influence des modes de communication et de transaction

    • Échanges synchrones et asynchrones.
    • Niveau d’isolation, modèles transactionnels et niveaux de performance.
    • Recommandations.

    Les écueils courants

    • L’antipattern mitrailleuse.
    • L’antipattern mammouth.
    • L’antipattern cascade.
    • Comment les détecter : solutions pratiques et retours d’expériences.

    Les architectures orientées services (SOA, WOA et EDA)

    • La question de la granularité des services.
    • Comparaison des approches SOA et WOA (SOAP vs REST).
    • Comparaison de SOAP et REST.
    • Le cas particulier des architectures orientées évènement (EDA).
    • L’impact des réseaux et des infrastructures de médiation (ESB) sur la performance.
    • Une nouvelle approche : les micro-services
    • Retours d’expériences et recommandations sur les architectures SOA, WOA et EDA.

    L’infrastructure matérielle


    Le réseau

    • Principales propriétés des réseaux.
    • Les huit idées fausses sur l’utilisation des réseaux dans les applications distribuées. Comment les combattre efficacement sur les projets ?

    Le stockage

    • DAS, SAN et NAS.
    • Lequel choisir ? Dans quels cas ? Pour quels bénéfices ?
    • La technologie SSD

    Les serveurs

    • CPU multicœurs vs serveurs multi-CPU. Principales propriétés.
    • Pourquoi virtualiser ? Pour quel usage ?

    La consolidation et les plateformes de Cloud Compting

    • Comment sortir du modèle : une application, un OS, un serveur ?
    • Gérer la performance sur une plateforme de Cloud Computing (Amazon AWS, Heroku, Microsoft Azure…).

    L’infrastructure logicielle


    Les formes de scalabilité

    • La scalabilité horizontale.
    • La scalabilité verticale.
    • La scalabilité diagonale.
    • Avantages et inconvénients, domaines d’application respectifs.

    Les différents types de clusters

    • Les clusters actif/passif.
    • Les clusters actif/actif.
    • Leurs domaines de prédilection et leur influence sur les coûts.
    • Comment choisir la bonne formule ?

    Les bases de données relationnelles

    • La réplication.
    • Le partitionnement.
    • Les principes ACID et BASE.
    • Les différentes variantes de clustering et le positionnement des principaux éditeurs : Oracle, IBM, Microsoft, MySQL, Postgres, etc.
    • Comment choisir entre réplication, partitionnement et clustering ?

    Les bases de données NO-SQL

    • Le mouvement NO-SQL.
    • Les bases de données orientées graphe.
    • Les bases de données orientées colonnes.
    • Les bases de données documentaires.
    • Les bases de données clé/valeur.
    • Comment bien choisir une solution NO-SQL ?

    Le grid computing

    • Les traitements batch avec Map Reduce et Hadoop.
    • Les traitements temps-réel avec Spark et Storm.
    • Dans quels cas ces solutions peuvent-elles remplacer des clusters traditionnels ?

    Les serveurs d’application

    • JEE et les clusters. Les visions d’Oracle, IBM, Apache et les autres.
    • Les nouvelles plateformes serveur basées sur Javscript (NodeJS).
    • Les techniques de répartition de charge : solutions logicielles et matérielles. Avantages et inconvénients.
    • Les différentes formes de failover.

    La phase d’intégration


    Le dépistage des problèmes de performance

    • Les goulots d’étranglement (bottlenecks). Comment les diagnostiquer et les traiter ?
    • Les principaux modèles de comportement des applications distribuées (web, n-tiers).
    • La surconsommation et les fuites de mémoire. Techniques de détection et solutions pratiques.
    • Influence des nettoyeurs de mémoire (garbage collectors) sur les performances. Exemples.

    Les tests de charge ou métrologie

    • Bénéfices et coûts. Pour quels types d’applications ?
    • De la capture des scénarios utilisateurs à la construction des jeux de données. Quelle méthodologie retenir ?
    • Présentation d’un cas concret et analyse des résultats.
    • Panorama des outils du marché : HP, Compuware, etc.
    • Quelle place pour les outils Open Source ?

    La gestion des passages en production

    • Le mouvement DEVOPS.
    • Le packaging des applications.
    • Les bonnes pratiques en matière de configuration et de gestion des logs.
    • L’émergence des outils de release management : le point sur les principales offres. Quels bénéfices en attendre ?
    • La gestion des bascules. Conseils pratiques pour l’arrêt/démarrage des services et les retours arrières.

    Le monitoring et le capacity planning


    Le monitoring technique

    • Le Business Service Monitoring (BSM).
    • Fréquences de collecte, volumes de données et délais de rétention.
    • Réagir aux événements avec la supervision. Les notions de seuil et les règles de franchissement.
    • Panorama des offres des éditeurs : IBM Tivoli, HP OpenView, BMC Patrol, etc.
    • Que penser des outils de monitoring Open Source ? Les cas de Nagios, Zenoss et VMWare Hyperic.

    Le monitoring des activités métier

    • Le Business Activity Monitoring (BAM) et l’informatique décisionnelle.
    • Un nouvel enjeu : la surveillance des flux dans les architectures orientées services.
    • La capture de l’expérience utilisateur, enjeux et moyens.
    • Tour d’horizon des outils disponibles.

    Comment choisir les indicateurs les plus pertinents ?

    • Monitoring vertical, monitoring horizontal, hypervision.
    • Les principaux indicateurs techniques et business.
    • Indicateurs simples, indicateurs composites et indicateurs dérivés.
    • Relier les indicateurs aux contrats de niveau de service (SLA).
    • Le reporting : qui utilise les informations de monitoring ? Pour quoi faire ?

    Modéliser la performance pour anticiper les besoins

    • Les lois universelles de la scalabilité.
    • Les techniques basées sur les calculs de files d’attente.
    • Une approche pragmatique : le “Guerilla Capacity Planning”.