Capgemini Institut 0144742410
24 rue du Gouverneur général Eboué 92136 Issy les Moulineaux
Architectures d’Applications Distribuées Paris
Architectures d’Applications Distribuées Paris
DURéE
3 jours
DATES
19-21 juin 2017
11-13 décembre 2017
LIEU
Paris
PRIX
2 615 € ht (3 138 € ttc)
Sommaire du séminaire
    Séminaires technique Institut Capgemini

    Architectures d’Applications Distribuées

    >  concepts, technologies et approches




    Proposée sur trois jours, une synthèse des concepts, technologies et approches architecturales pour maîtriser la complexité et l’évolution des applications distribuées. Après une analyse des dernières évolutions du Web, le séminaire introduit les architectures distribuées puis, afin de faciliter la présentation, les décline en deux grandes classes (orientées données et orientées services), qui sont complétées par les architectures big data et cloud.

    Plus particulièrement, les points suivants sont traités :

    • Web 2.0 et nouveaux besoins.
    • Impact de XML, JSON, AJAX et HTML5 sur les architectures Web?
    • Architectures multi-tiers, middlewares transactionnels et Web Services.
    • Quid de la sécurité dans un contexte distribué et ouvert ?
    • Données distribuées : comment exploiter le P2P pour passer à l’échelle ?
    • Web Services : SOAP versus REST.
    • SOA versus WOA : les meilleurs cas d’usage.
    • Event-driven SOA: vers des SI réactifs ?
    • Architectures big data: impact sur l’existant?
    • Cloud et big data : le mariage parfait ?


    Évolutions du Web et de ses applications


    Évolution des applications distribuées

    • Tendances : mobilité, big data, connectivité.
    • Portails d’informations et de services.
    • Transactions de commerce électronique.
    • Réseaux sociaux, communautés professionnelles, crowdsourcing et collaboration à grande échelle.
    • Applications mobiles : smartphones et tablettes.
    • Hébergement de services, data centers et cloud.
    • Les besoins : interopérabilité (anyhow), accès à partir de terminaux mobiles (anywhere), haute disponibilité (anytime).

    Évolutions du Web

    • Protocoles et architectures.
    • Les formats d’échange de données : XML versus JSON.
    • Web 2.0 : échange de données XML, nouvelles formes d’interaction, l’exemple de Wikipédia.
    • Du client léger au client riche avec HTML5, CSS3, JavaScript et AJAX.
    • Les problème de sécurité avec AJAX.
    • Le RIA : Adobe Flash, JavaFX, Microsoft Silverlight.
    • Les mashups.
    • Web 3.0 : sémantique des ressources avec RDF et SparQL, ontologies avec OWL.

    Architectures distribuées


    Architectures multi-tiers

    • Modèles 1-tier, 2-tiers, 3-tiers, n-tiers.
    • Les différents niveaux : présentation, sécurité, application, intégration, ressources.
    • La distribution des clients : léger, lourd ou riche.
    • La distribution des serveurs : présentation, Web, pare-feu, applications, données.
    • Mise en œuvre du patron d’architecture MVC (modèle-vue-contrôleur) dans le 3-tiers.
    • Architectures : orientées données (DOA), orientées services (SOA), orientées Web (WOA), peer-to-peer (P2P), massivement parallèles (MPP).

    Sécurité

    • Sécurité des applications distribuées : confidentialité, intégrité, disponibilité.
    • Les principales attaques.
    • Les défenses : authentification, protection des communications, autorisation, chiffrement, audit, contrôle d’usage, rétention limitée, anonymisation, législation.
    • Le chiffrement : clés privées, clés publiques, certificats.
    • Techniques de sécurité réseau : antivirus, VPN, firewalls, DMZ, serveurs proxy,
    • Techniques de protection des données : serveurs de données cryptées, contrôle d’accès discrétionnaire ou multi-niveau.

    Web Services

    • Architecture des Web Services : client, fournisseur, annuaire de services.
    • Description des services avec WSDL.
    • Référencement des services, les annuaires de services, l’échec de UDDI.
    • Le protocole de communication SOAP.
    • La composition de services avec BPEL.
    • Qualité de service et sécurité : WS-reliability, WS-transaction, WS-security, etc.
    • Etude de cas de réutilisation : Qwest Communications.

    Architectures orientées données


    Intégration des données distribuées

    • Intégration réelle (data warehouse) ou virtuelle (fédérateur de données).
    • Médiateur, adaptateur et ETL.
    • Intégration de schémas et d’ontologies : les conflits sémantiques, le problème de la résolution d’entité.
    • Modèles de données pour l’intégration : relationnel, XML, clé-valeur.
    • L’offre produits et services.

    SGBD transactionnels distribués

    • Transactions distribuées : les propriétés ACID, le protocole 2PC, tolérance aux pannes et scalabilité.
    • Réplication de données : cohérence des copies, propagation des mises à jour.
    • Produits principaux : Oracle, IBM DB2, SQLServer, SAP Sybase, PostgreSQL, MySQL.
    • Etude de cas : consolidation des ventes de milliers de magasins franchisés.
    • Le théorème CAP (Consistency, Availability, Partition tolerance) : analyse et impact.

    Le P2P

    • Objectifs : autonomie des pairs, contrôle décentralisé, auto-adaptation, très grande échelle.
    • Topologie des réseaux P2P : non structurés, structurés (DHT), superpeers.
    • Avantages et inconvénients du P2P.
    • Le framework JXTA.
    • Applications principales : partage de contenus (ex. Bittorrent), communication (ex. Skype), calcul distribué (ex. Seti@home).
    • Etude de cas : Beepeers, réseau social pour appareils mobiles.

    Approche orientées services


    Gestion de services avec serveurs d’applications

    • Le modèle JEE : les API standards, vers la simplification avec JEE 8.
    • Le problème de la persistance des objets Java ; les solutions de type TopLink, Hibernate, Versant enJin.
    • Les principaux serveurs JEE : IBM WebSphere, Oracle WebLogic, JBoss, Geronimo, Jonas, Sun GlassFish.
    • L’alternative légère à JEE avec POJO, Spring et Tomcat.
    • .NET de Microsoft : les transactions distribuées, l’accès aux données avec ADO.

    Service Oriented Architecture (SOA)

    • Éléments essentiels : messages descriptifs, format d’échange standard, extensibilité, découverte de service.
    • EAI : transport, transformation et routage de messages ; gestion des processus métier.
    • ESB : interopérabilité des Web Services, gestion de messages distribués, équilibrage de charge.
    • Les offres : IBM, Oracle, Microsoft, SAG, Sonic, Sun OpenESB, Ow2 Petals.
    • Succès et échecs du SOA ; écueils à éviter.

    Event-Driven Architecture (EDA)

    • SI dirigés par les événements : event-driven BPM, event-driven SOA.
    • Business activity monitoring (BAM).
    • Gestion d’événements complexes avec Complex Event Processing (CEP).
    • Gestion de flux d’événements avec Event Stream Processing (ESP).
    • Les principaux CEP : Tibco Streambase, Microsoft StreamInsight, Parstream, etc.

    Web Oriented Architecture (WOA)

    • Le modèle d’architecture REST : identification des ressources par URI, accès par hyperliens, protocole sans état (HTTP).
    • SOAP versus REST.
    • Les frameworks de services RESTful : AngularJS, ASP .NET, Eclipse, JAX-RS, Restfulie, Spring, Struts.
    • L’alternative aux frameworks : RESTful MVC.

    Architectures Big data


    Traitement de données parallèles

    • Objectifs : speed-up, scale-up, scale-out, élasticité.
    • Architectures multiprocesseurs: SMP et NUMA, cluster shared-disk, cluster shared-nothing.
    • Stockage des données : ligne versus colonne, sharding, réplication, indexation.
    • Performances : parallélisation des requêtes, équilibrage de charge, transactions.
    • Haute disponibilité : le failover, les points de sauvegarde pour requêtes lourdes.

    Machines bases de données relationnelles

    • Logiciel/matériel dédié aux données structurées.
    • Produits principaux: IBM, Microsoft, Oracle, SAP, Teradata, HP Vertica, ParAccel, EMC.
    • Étude de cas : Sabre Air Travel Shopping Engine.

    La pile logicielle big data

    • Les niveaux fonctionnels : stockage, organisation, traitement, intégration, outils d’analyse.
    • L’architecture Hadoop, comparaison avec l’architecture Lambda.
    • Les data lakes.
    • Comparaison avec les SGBD relationnels.

    Les frameworks de traitement de big data

    • Le modèle de données clé-valeur, partitionnement des fichiers : GFS versus HDFS.
    • Le framework MapReduce : les fonctions Map et Reduce, tolérance aux fautes et équilibrage de charge, le projet Hadoop.
    • Editeurs principaux: Apache, Cloudera, Amazon Elastic Compute Cloud (EC2).
    • Intégration dans le SI et le cloud: Google, Amazon, Microsoft, IBM, Oracle.

    Architectures grid et cloud


    Grid Computing

    • Objectifs : fédération des ressources distribuées, organisations virtuelles, hautes performances.
    • Différents types de Grids : calcul, données, récupération.
    • Grid versus virtualisation.
    • Fonctions d’un Grid : administration, sécurité, annuaire, gestion de ressources.
    • Les services standards de l’Open Grid Service Architecture, l’outil Open Source Globus.
    • Étude de cas : le LHC Computing Grid du CERN.

    Cloud Computing

    • Objectifs : hébergement de services, passage à l’échelle, élasticité, hautes performances, pay-per-use.
    • Origines : ASP, Software as a Service (SaaS), Infrastructure as a Service (IaaS), Platform as a Service (PaaS).
    • Différents types de Clouds : public, privé, communautaire, hybride. Grid versus Cloud.
    • Fonctions d’un Cloud : administration, sécurité, annuaire, virtualisation des ressources, gestion des SLA.
    • Positionnement des acteurs majeurs : Amazon, Google, IBM, HP, Microsoft, Oracle-Sun, SalesForces, VMware.
    • Études de cas : Amazon, Google.
    • Le Cloud Computing en France : Atos, Bull, Cloudwatt, Dassault Systèmes, Numergy, Orange, Thales.
    • Cloud et big data : le mariage parfait ?

    Gestion de données dans le cloud : le NoSQL

    • Architecture BD dans le cloud : la fin du relationnel ?
    • SGBD clé-valeur : Amazon DynamoDB, Apache Cassandra, Linkedin Voldemort.
    • SGBD tabulaires : Google Bigtable, Hadoop Hbase, Apache Accumulo.
    • SGBD orientés-documents : MongoDB, CouchBase, LinkedIn Espresso.
    • SGBD orientés-graphes : Neo4J, DEX/Sparksee, AllegroGraph.
    • NoSQL versus relationnel. L’intégration SQL/NoSQL avec Google F1.
    • Critères de choix d’un SGBD NoSQL.
    • Intégration de données SQL et NoSQL : Microsoft Polybase, HadoopDB.