Formation 1 - Formation Architecture SOA Architecture SOA.

Slides:



Advertisements
Présentations similaires
Présentation LabPlus v3. Solution novatrice en Technologies de l’information Solution novatrice en Technologies de l’information Application pour la Gestion.
Advertisements

Formation ExtJS 1 Vendredi 21 aout 2009 – Villeurbanne – Société IZEO.
Les profils du SEDA confection de profil avec Agape.
RMLL 2008 Isis-FISH/Gesi Benjamin Poussin Code Lutin
Formation 1 - Formation Web Services Web Services septembre 2010 – Paris.
Développement d'applications Web avec le framework PHP Symfony 2 Mathieu Peltier (Mercator Océan - CNRS) (UMS 831, Observatoire Midi-Pyrénées)
Logiciel Assistant Gestion d’Événement Rémi Papillie (Chef d’équipe) Maxime Brodeur Xavier Pajani Gabriel Rolland David St-Jean.
GOOGLE MAPS ANDROID API V2. INTRODUCTION TO THE GOOGLE MAPS ANDROID API V2.
Formation 1 Formation ESB ServiceMix ESB ServiceMix.
L’évolution du SI. Introduction De nombreux éléments peuvent amener une organisation à faire évoluer son système d’information : Modification des besoins.
1 Module de formation « ERP » Sommaire Master Spécialisé en Management des Technologies de l’Information EPITA M. Patrick SZYCHTER Mai 2006.
Plan Présentation de 2TUP 2TUP, un processus UP 2TUP et UML Les apports de 2TUP 2TUP en détail 2TUP dans la pratique.
DIAGRAMME DE DEPLOIEMENT Exposé de: MBALLA MEKONGO Michèle MBOUNA FEUZE William SIEYADJEU Alex Lionel CHOPGWE Leonard NDUMATE Landry TIDJON Lionel.
Procédures Framework LDAP
Nouveautés Version 4.1 et mai 2017.
Les commandes externes
Support et Maintenance SIAN : MDEL partenaires
Thèmes du niveau « Expert »
Google analytics.
Usine de Développement.
Cours 12 : Les Web Services et UDDI Mars Version 1.0 -
La Politique Qualité 1.
Séminaire Novembre 2006 Zephir : Déploiement et supervision des serveurs Eole.
Les Bases de données Définition Architecture d’un SGBD
MOT Éditeur de modèles de connaissances par objets typés
FENIX Aperçu GLOBALE DU Système
Javadoc et débogueur Semaine 03 Version A16.
Asynchronous Javascript And Xml
Virtualisation d’applications mobiles dans un réseau de Cloudlets
Dossier d’inscription Nom de l’équipe
GENEVA SHOW CASE 28/04/15.
1ers pas des utilisateurs migrés
Démarche de conception. Démarche didactique.
Présentation des EJB Enterprise Java Beans.
Notion De Gestion De Bases De Données
Création Et Modification De La Structure De La Base De Données
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II
Institut Universitaire Virtuel de Formation des Maîtres
GLPI Gestion libre de parc informatique Application à la cellule DSI Pédagogie Avec liaison OCS-NG Gaétan TIRMONT.
Module M3202 Démarche d’amélioration
Package R Markdown: Un outil pour générer des pages html avec R Studio
Cours 7 : Les Web Services Concepts Généraux
DATA WEARHOUSE 1ère année LA: Technologies systèmes d’information
SOLUTION DE VIDEOSURVEILLANCE SUR IP
Structuration du contenu
Développement d’applications interactives
Integrated Business intelligence
Diagrammes UML 420-KE2-LG.
AUTOMATISATION DES PROCESSUS
La mission SUIVI DE GESTION
Programmation Android Première application Android
Responsable Petite et Moyenne Structure
„La plate-forme EAI “ Initiation à WBI
5 Analyse avec Designer d'Oracle
Modélisation objet avec UML
Module 13 : Implémentation de la protection contre les sinistres
„La plate-forme EAI “ Initiation à WBI
7 Contraintes d’intégrité en SQL
Serveurs d’applications
20 Données semi-structurées et XML
EPITECH 2009 UML EPITECH 2009
JDepend - Analyse de la qualité du code Java -
Un Mécanisme d‘Adaptation Guidé par le Contexte en Utilisant une Représentation par Objets Manuele Kirsch Pinheiro Laboratoire LSR – IMAG, Équipe SIGMA.
Réforme du Lycée
Design, innovation et créativité
Modélisation des SI et de la connaissance
Séance centre patronal Paudex
Conférence Témoignage-Métiers
UC : Diagramme des cas d’utilisation Req : Diagramme d’exigence
MOT Éditeur de modèles de connaissances par objets typés
Transcription de la présentation:

Formation Formation Architecture SOA Architecture SOA

- Formation SPRING A propos d’Objis…  Centre de formation depuis 2005  Spécialiste technologies Java/J2ee  Formations intra/inter entreprises  70% de pratique  Paris – Lyon – Dakar  Sponsor salon Solutions Linux 2010  + de 100 tutoriaux Java/j2ee sur Formation Architecture SOA

- Formation SPRING Sommaire  Introduction SOA  Technologies d'intégration clés  Bus de service  Routage, transformation, validation  Orchestration web services  Processus métier  Traitement Evènement complexe  Moteur de règles Formation Architecture SOA

- Formation SPRING Objectifs  1) Comprendre problématiques SOA  2) Identifier technologies / briques clés SOA  3) Stratégie mise en oeuvre env. SOA / JEE Formation Architecture SOA

- Formation SPRING Apparition architecture SOA : contexte métier  Besoin : mettre le système d'information (SI) de l'entreprise au service du business !!  AVANT : SI = ensemble d'applications Gestion relation client (CRM) Gestion flux logistique (SCM) Progiciel de gestion entreprise (ERP) Gestion processus métiers (BPM) Entrepot de données (Datawarehouse)...  DEMAIN : SI = ensemble de services Formation Architecture SOA

- Formation SPRING Apparition architecture SOA : contexte technique  CORBA, EJB et DCOM basés sur RPC Pb : Couplage fort  EJB et DCOM liés à une plateforme Pb : manque d'intéropérabilité  CORBA EJB complexe CORBA nécessite IDL EJB nécessit(ait) XML complexe  : nouveaux standards ouverts XML / Web Services WSDL / SOAP / UDDI JAX-RPC / JAX-WS Formation Architecture SOA

- Formation SPRING Stratégie : pyramide SOA  Jusqu'où le SI met en oeuvre SOA ? Formation Architecture SOA 1) Sécurité 2) Transactions 3) Qualité service

- Formation SPRING Standards Web services : Le monde de JAX-WS Formation Architecture SOA SOAP JAXB JAX-R SCHEM A XML JAX-P WSDL MTOM SAAJ JAX-WS Java SE 6 UDDI inclus basé sur Fournit API haut niveau pour utilise Fournit API bas niveau pour Annuaire pour définit manipule Représenté par Fournit clients pour accéder Transformation JAVA / XML

- Formation SPRING Standards Web services  JSR 224 : JAX-WS (API haut niveau pour WS) –  JSR 181 : métadonnées (annotations) –  JSR 109 : Modèle prog. Web Services JEE –  JSR 67 : SAAJ (API bas niveau créer/manipuler WS) –

- Formation SPRING Environnement SOA Formation Architecture SOA Services bas niveau Systèmes métiers Services composites Processus métiers orchestrée Services de présentation ES B Service ERPPortailSCMCRM Adaptateurs TransformationTransformation MessagesMessages RoutageRoutage

- Formation SPRING SOA : 5 caractéristiques clés  Contrat de service  Transparence du service  Granularité du service  Composition du service  Annuaire de service Formation Architecture SOA

- Formation SPRING Caractéristique SOA : interface / contrat de service Formation Architecture SOA Service(s) 1Opération XSD Message In/Out 2Opération XSD Message In/Out

- Formation SPRING Caractéristique SOA N°1 : interface / contrat de service  Quelles opérations disponibles entre le client et le service ? Quelles données en paramètres ?Comment solliciter le service ?  Solution : WSDL + XSD : description format message XML pour chaque opération  WSDL 1.1 complexe Ports ? Bindings ?  WSDL 2.0 plus simple Courbe apprentissage plus réduite  WS-Adressing Formation Architecture SOA

- Formation SPRING Caractéristique SOA N° 2: Transparence Formation Architecture SOA

- Formation SPRING Caractéristique SOA N° 2: Transparence  Appeler un service sans avoir besoin de connaître son emplacement physique sur le réseau  Solution 1 : ESB (Enterprise Service Bus) Ex : ServiceMix ( )  Solution 2 : Proxy / Médiateur Ex : Apache Synapse (  WS-Adressing Définir dans le message le endpoint / l'action pour un Web Service basé sur Soap Notion de 'destination logique' Formation Architecture SOA

- Formation SPRING Caractéristique SOA N° 2: Transparence Formation Architecture SOA

- Formation SPRING Caractéristique SOA N° 2: Transparence Formation Architecture SOA

- Formation SPRING Caractéristique SOA N° 3: Granularité et état  Ex : besoin d'un service web qui ajoute un utilisateur dans le CRM du SI  Solution 1 : Un seul 'gros' service AjouterClient (OrganisationId) → id spécifique CRM PB : limite réutilisabilité du service par autres clients  Solution 2 : plusieurs petits' services RechercherOrganisationIdClient(Client) AjouterAdresseClient()  Maximiser la réutilisabilité !  La gestion de l'état ajoute de la complexité Ex service nécessitant validation (id en session ?) Formation Architecture SOA

- Formation SPRING Caractéristique SOA N°4 : Composition de services  Maximiser la création de services composites et / ou orchestration de services 1 service = Ensemble d'autres services  Solution 1 : spec BPEL (orchestration WS) Exemple produit : Ode (  Solution 2 : spec SCA (Service Component Architecture) Exemple produit : Tuscany Formation Architecture SOA

- Formation SPRING Caractéristique SOA N°4 : Composition de services  Norme SCA : 2005 (IBM, BEA, Oracle...) Création de services 'composite' 1 service = ensemble de 'composants' Indépendance protocole accès & langages implem  Analogie Spring Conteneur Spring (XML)= Composite SCA Bean Spring = Composant SCA Formation Architecture SOA 12

- Formation SPRING Caractéristique SOA N°4 : Composition de services  Exemple modélisation pb : Service de Tickets Formation Architecture SOA

- Formation SPRING Caractéristique SOA N°4 : Composition de services  Service de Tickets : solution 1 (Composite SCA) Formation Architecture SOA SCADomain scaDomain = SCADomain.newInstance("composite1.xml");

- Formation SPRING Caractéristique SOA N°4 : Composition de services  Service de Tickets : solution 2 (Composite SCA) Formation Architecture SOA

- Formation SPRING Caractéristique SOA N°4 : Composition de services  Service de Tickets : séquence Formation Architecture SOA

- Formation SPRING Caractéristique SOA N°5 : Annuaire & publication  Aujourd'hui peu d'entreprises utilisent UDDI Peu d'annuaires publics (essais de SAP,IBM..) La 'découverte automatique' se heurte au business Réalité : besoin de contrats commerciaux !  En pratique : Pour web services SOAP, un WSDL clair suffit pour lister les services et opérations disponibles Annuaire interne Ex : Juddi Base de données Annuaire LDAP Wiki Solution pro : CentraSite.org MuleSource :Galaxy ( Annuaire WS02 ( Formation Architecture SOA

- Formation SPRING Les technologies d'une plate forme SOA Formation Architecture SOA

- Formation SPRING Technologies plate forme SOA (1/2)  BPM : Business Process Management Définir, Visualiser, Déployer des processus métiers impliquant plusieurs organisations Objectif : réduire couts, améliorer agilité business.  EDM : Enterprise Decision Management Modifier simplement toutes les règles métiers Via DSL (Domain Specific Language) BRE (Business Rules Engine) BRMS (Business Rule Management System)  ESB : Enterprise Service Bus Ex : recevoir fichier Ascii via FTP et le transformer en fichier XML,puis soumettre à WS Notion de 'temps réel' 27

- Formation SPRING Technologie SOA : Complex Event Processor  CEP : Complex Event Processor Gérer plusieurs flux de données en temps réel En déduire tableaux de bord stratégiques / tactiques / opérationnels (BAM) Ex fraude : utilisation simultanée carte crédit Ex. produit : Esper ( Ex. produit : Tibco BusinessEvents Formation Architecture SOA

- Formation SPRING Les technologies d'une plate forme SOA : Complex Event Processor Formation Architecture SOA

- Formation SPRING Technologie SOA : Service central de Décision (EDM) Formation Architecture SOA

- Formation SPRING Technologie SOA : Service central de Décision (EDM) Formation Architecture SOA

- Formation SPRING Technologie SOA : Business Activity Monitor (BAM) Formation Architecture SOA Exemple solution BAM de WS02 :

- Formation SPRING Technologie SOA : annuaire de Service Formation Architecture SOA

- Formation SPRING Technologie SOA : annuaire de Service Formation Architecture SOA

- Formation SPRING Roles de l'ESB  1) Connecteurs de données / Adaptateurs HTTP (SOAP,XML), FTP, SFTP, JMS, Fichier...  2) Transformation Ex : transformation XSLT pour flux XML  3) Routage intelligent Basé sur contenu ou en tête message  4) Gestion du service Outils admin déploiement, versionning, config.  5) Monitoring & Logging Suivre en temps réel flux données. Intercepteurs Formation Architecture SOA

- Formation SPRING Roles et utilité de l'ESB  6 ) API d'intégration Ajouter de nouveau adaptateurs spécifiques  7) Gestion de flux Visuellement (ou à travers éditeur XML) créer graphes ou enchainement de séquences  8) Timing Créer actions en fonction du temps / Triggers  CONSEIL : valeur ajoutée de l'ESB mitigée si services exposés sous forme de web service Utile si plusieurs formats données à gérer, plusieurs protocoles. Environnement complexe Formation Architecture SOA

- Formation SPRING Architecture ESB dans le SI Formation Architecture SOA

- Formation SPRING Conception : chaine d'intégration Formation Architecture SOA

- Formation SPRING Exemple ESB : ServiceMix Formation Architecture SOA Bus de service Open source / Implémentation JBI (JSR 208)

- Formation SPRING ServiceMix : démarrage 40  Choix 1 : lancer directement bin/servicemix ServiceMix utilise alors conf/servicemix.xml Voir console 'JBI Container (ServiceMix) started'  Choix 2 : expliciter un fichier de config : bin/servicemix monfichierconfig.xml ServiceMix utilise alors votre fichier de conf Lors du démarrage, ServiceMix charge tous les services disponibles dan 'hotdeploy' Formation Architecture SOA

- Formation SPRING ServiceMix : configuration avec fichier servicemix.xml 1 2

- Formation SPRING ServiceMix : packaging et déploiement Formation Architecture SOA

- Formation SPRING Exemple scenario simple d'intégration  Récupérer message d'une file ActiveMQ  Traiter message (Ex : tracer contenu message) 43 ESB ServiceMix Formation Architecture SOA Queue JMS

- Formation SPRING ServiceMix : scenario intégration  Récupérer message XML d'une file de message Jargon SMix = Service Unit ''Binding Component'  Traiter ce message (Ex : affichage console) Jargon Smix = Service Unit 'Service Engine' Formation Architecture SOA ESB ServiceMix Queue JMS 1 2

- Formation SPRING Exemple scenario simple d'intégration : quels composants ? URL composants ServiceMix :

- Formation SPRING ServiceMix : méthodologie  1 : sélectionner BC et SE  2 : configurer les SU pour le scénario  3 : packager les Sus dans un SA  4 : déployer le SA dans serviceMix

- Formation SPRING ServiceMix : scenario intégration

- Formation SPRING ServiceMix : Exemple xbean.xml Binding Component Formation Architecture SOA Ecoute d'une file de message

- Formation SPRING ServiceMix : scénario intégration Formation Architecture SOA

- Formation SPRING ServiceMix : scénario intégration Formation Architecture SOA 1 2

- Formation SPRING Démo ServiceMix : déploiement service dans 'hotdeploy' Formation Architecture SOA Copier la livraison dans répertoire 'hotdeploy' de ServiceMix ServiceMix informe du déroulement du déploiement du service

- Formation SPRING Démo ServiceMix : test du scénario d'intégration 52  1 : démarrer ESB ServiceMix  2 : démarrer fournisseur de message ActiveMQ  3 : identifier queue 'objis.client.queue' via broker  4 : ajouter un message dans la queue  5 : scruter la console pour voir si message traité - Formation Architecture SOA

- Formation SPRING Démo ServiceMix : test du scénario d'intégration

- Formation SPRING Monitoring JMX 54  Lancer JAVA_HOME\bin\jconsole (jdk 5)  ou JAVA_HOME\bin\jvisualvm (jdk 6)

- Formation SPRING Monitoring JMX 55 2 Onglet Mbeans Avec activation JMX Formation Architecture SOA

- Formation SPRING Monitoring JMX : ActiveMQ 56 Configurer le Broker : → Attributs → Opérations Liste des Queues - Formation Architecture SOA

- Formation SPRING Monitoring JMX : ServiceMix 57

- Formation SPRING Monitoring JMX : Statistiques Endpoint 58

- Formation SPRING LOG 59

- Formation SPRING Gestion des erreurs : bonne pratique  Utiliser un composant Camel comme intermédiaire  Avantage : aucun développement à faire Par rapport à une autre solution de type bean Formation Architecture SOA

- Formation SPRING Sécurité  INFO : gestion d'erreurs préalable !!! Vous devez savoir gérer messages d'erreur Authentification & Autorisation & intégrité  Solution 1 : passer par un bean A éviter car implique codage  Solution 2 : passer par API JAAS Java Authentication and Autorisation Service Authentifier (Login/pwd ou certificat) + Role Pas de code ! Uniquement config → TB ! Autorisation : Fichiers conf\groups.properties Authentification : users-passwords.properties ou users-credentials.properties (si certificats) Formation Architecture SOA

- Formation SPRING Sécurité Formation Architecture SOA

- Formation SPRING Sécurité  Solution 1 (simple) : passer par un bean  Le bean trace message et contexte de Sécurité Formation Architecture SOA

- Formation SPRING ServiceMix : scénario complexe (calculateur de meilleur tarif) Formation Architecture SOA

- Formation SPRING ServiceMix : scénario complexe Flux de requête Formation Architecture SOA

- Formation SPRING ServiceMix : scénario complexe Flux de réponse Formation Architecture SOA

- Formation SPRING ServiceMix Formation Architecture SOA

- Formation SPRING ServiceMix 4  Nouveauté : OSGi  Nouveauté : vues Développeur / Technologie / Noyau 68 Formation ESB ServiceMix

- Formation SPRING Exemple ESB : Mule ESB Formation Architecture SOA 1,5 millions de téléchargements – 2500 mise en production -

- Formation SPRING Plate forme SOA 'Opensource'  Combinaison de produits open source remplissant objectifs de chaque brique technologique de la pyramide  Critères de choix : Viabilité Architecture Monitoring Extensibilité 'vrai' Open source Formation Architecture SOA

- Formation SPRING Plate forme SOA 'Opensource' Formation Architecture SOA

- Formation SPRING Drools  Pour avoir un système 'agile' & 'intelligent', les décisions opérationnelles doivent être gérées, automatisées, améliorées  Ces décisions peuvent dépendrent d'éléments extérieurs imprévisibles  Coder les règles métiers en Java ne permet pas cette agilité. De plus modifications dépend des développeurs...pas acceptable pour le business !!!  Drools permet de modifier les règles métiers d'un programme sans modifier le code Java Formation Architecture SOA

- Formation SPRING Architecture Drools  Drools Expert : le moteur  Drools Fusion : traitement évènements complexes  Drools Flow : combine Règles et Processus métiers  Drools Guvnor : Système gestion Règles métiers  Drools Solver : algorithme de recherche  Plugin Eclipse Formation Architecture SOA

- Formation SPRING Processus métiers  Séquence d'activités contribuant au besoin métier  BPM utilise les services exposés Formation Architecture SOA

- Formation SPRING Relation BPM / Services / Evènements Formation Architecture SOA

- Formation SPRING Relation Flux BPM / Flux ESB 76  Flux ESB : echange de messages entre systemes Approche 'technique' Utile ssi nombreux protocoles & formats données Routage 'temps réel'  Flux BPM : exécuter processus métier Approche 'métier' Lent (pourque tout un processus finisse) Nécessite souvent intervention humaine Notion de 'temps d'attente (wait state)  Bonne pratique : utiliser BPM + ESB BPM pour modéliser métier ESB pour routage temps réel + transformation messages

- Formation SPRING JBPM  1) jBPM prend un processus graphique en entrée  2) Un processus est composé d'activités liées par des transitions  3) Le diagramme / graphe sert pour commmunication entre analystes et développeurs  Process = flux d'exécution  Exécution d'un process = instance du process  JBPM gère les instances de process  Certaines activités sont automatiques : envoi ou invocation EJB Formation Architecture SOA

- Formation SPRING Déploiement d'un processus  2 options Packager processus en fichier.par Contient diagramme du processus Déployer directement via console web  Lorqu'un processus est déployé, il obtient systématiquement nouvelle version Permet de pas 'écraser' instances existantes Facilite audit de chaque version du process Formation Architecture SOA

- Formation SPRING JBPM  Certaines activités sont automatiques : envoi ou invocation EJB  Certaines activités peuvent être en état d'attente : attente d'une commande client  JBPM va gérer et rendre persistant les états  Composantes jBPM Moteur Eclipse designer Web modeler : Signavio Formation Architecture SOA

- Formation SPRING JBPM 5 full installer : 'ant install.home'  Installation Jboss AS GA  Installation Eclipse Helios  Installation Drools Guvnor dans Jboss AS  Installation Oryx Designer dans Jboss AS  Installation console jBPM dans Jboss AS  Installation plugin Eclipse jBPM  Installation plugin Eclipse Drools Formation Architecture SOA

- Formation SPRING Les risques du couplage faible  1) Les nouveaux standards de communications (XML, SOAP, WSDL, UDDI....) sont ouverts.  2) Les nouveaux standards de communications ont été développé sans une approche sécurité.  3) Si'ils sont utilisés 'tel quels', ils sont complètement non sécurisé !  Exemple : communication Usine / Agences AVANT : Interfaces propriétaires sécurité DEMAIN : services exposés via WS Formation Architecture SOA

- Formation SPRING Exemple B2B AVANT SOA : Communication par VPN Formation Architecture SOA

- Formation SPRING Exemple B2B AVEC SOA : Communication par Web Services Formation Architecture SOA

- Formation SPRING Solutions pour Sécurité  1) Intercepteur SOAP  2) SAML (Secure Assertion Markup Language) & Authentification fédérée (Ex: OpenSSO)  3) Proxy  4) Contrats  5) Certificats  6) Encryption XML  7) Signature  8) Audit Formation Architecture SOA

- Formation SPRING Apache Camel  Implémentation de patterns d'intégration (EIP) entre un point A et un point B ( )  Traitement de messages: routage, médiation, transformation, validation, interception, enrichissement  Langage spécifique (Domain Specific Language)  from(“file:c:\objis\xml”).filter().xpath(expression).to(“jms:dQueue”)  Supporte plusieurs protocoles (http, ftp, file,...)  Supporte plusieurs formats données (xml, json, text...)  CamelContext = 'routes' + 'processors' + 'components' Formation Architecture SOA

- Formation SPRING Apache Camel Formation Architecture SOA

- Formation SPRING Scénario d'intégration simple avec Apache Camel Formation Architecture SOA

- Formation SPRING Apache Camel : objet Exchange Formation Architecture SOA

- Formation SPRING Apache Camel : contexte Camel Formation Architecture SOA

- Formation SPRING Apache Camel : routage intelligent Formation Architecture SOA

- Formation SPRING Drools : les produits  Drools Expert : le moteur de règles  Drools Fusion : module CEP (Complex Event Proc.)  Drools Flow : combine Règles et processus métier  Drools Guvnor : BRMS  Drools Solver : Algorithme de recherche  Plugin Eclipse  Formation Architecture SOA

- Formation SPRING Jboss Rules (Drools) : concurrents  ILOG (Ibm)  Jrules  Blaze Advisor .NET : Biztalk  OpenRules  Jess Formation Architecture SOA

- Formation SPRING Règles métiers : le problème  PB Implémentation règles métier 'en dur dans le code' : Maintenance difficile (code spaguetti / if imbriqué !) Evolution : attention à la régression ! MAJ règles réservée au Développeur Vérif règles difficile / MAJ impossible pour analyste + il y a de if, + de prob. performance Formation Architecture SOA

- Formation SPRING Règles métiers : la solution  Mise en oeuvre moteur de règles (si règles < 20) : Séparer le QUOI (quelle règle) et COMMENT (algo) Langage déclaratif (ex:SQL) Les analystes écrivent les règles. Le moteur traduit Maintenance accrue car séparation quoi/comment Performances indep Nb Règles (Algo Rete, // exec) Flexibilité : plus simple d'ajouter règles que code Formation Architecture SOA

- Formation SPRING Jboss Rules (Drools) : Règle Formation Architecture SOA

- Formation SPRING Jboss Rules (Drools) : Règle Formation Architecture SOA

- Formation SPRING

Traitement Evènements complexes (CEP)  Capturer informations métier : Messages / Evènements  Identifier des 'Patterns evenements'  Nombreuses applications : BPM (exceptions, monitoring) Finances, Fraude, Réseaux, Defense,  Analogie avec application DB “à l'envers” On enregistre requête → données temps réel  Remontée d'informations pour pilotage stratégique Ex : BAM (Business Activity Monitor) Formation Architecture SOA

- Formation SPRING ESPER : framework CEP Open Source  Traitement volume messages / évènements Besoin d'identifier des 'pattern de messages'  Dispo pour Java (Esper) et.NET (Nesper)   Langage requête : EPL ( Analogie SQL )  Mise en oeuvre : 4 points clés 1) Créer 'objets évènement' 2) Définir & enregistrer requêtes Esper 3) Spécifier Listeners et/ou souscripteur résultats 4) Définir options de configuration Formation Architecture SOA

- Formation SPRING ESPER : mise en oeuvre en 4 étapes clés Formation Architecture SOA Identifier Objet évènement Configuration Définir souscribteur et/ou listeners Définir et enregistrer La requête EPL

- Formation SPRING ESPER : Listener et souscripteur  But commun : écouter résultats requête EPL  Souscripteur Contrainte : 1 seul souscripteur par reqûete Avantage : matching direct avec besoin métier  Listener Plusieurs listeners possible par requête Inconvénient : besoin de caster résultats  Mi Formation Architecture SOA

- Formation SPRING ESPER IO : Intégration sources d'évènements  Notion d'Adaptateurs pour sources d'évènements : CSV, DB, Socket, Spring JMS, Stax Formation Architecture SOA Esper IO

- Formation SPRING ESPER : 2 méthodes pour traiter évènements  Méthode 1 : pattern d'évènements Corrélation entre évènement dans le temps Présence / Absence d'évènement(s)  Méthode 2 : requêtes flux d'évènement Fournit fonctions fenetrage, aggrégation, et analyse d'un flux d'évènement Formation Architecture SOA

- Formation SPRING Travaux pratiques SOA  1) Affectation de produits dans pyramide SOA  2) Création d'un web service SOAP avec Java 6  3) Intégration JMS avec Spring JMS et ActiveMQ  4) Déploiement de services simples dans ServiceMix  5) Services complexes et flux dans ServiceMix  6) Intégration et EIP avec Apache Camel  7) intégration de Camel dans Service Mix  8) Orchestration de services avec Apache ODE  9) Processus métiers avec Jboss Jbpm  10) Mise en oeuvre règles avec Drools Jboss Rules  11) Intégration de Drools dans serviceMix  12) Composition services SCA avec Apache Tuscany Formation Architecture SOA Implémentations couche service : WS / EJB / JMS Intégration technique / Métier Archi SOA

- Formation SPRING Bibliographie  Open Source SOA Editions Manning – 450 pages  Web Services Up and Running Editions O'Reilly – 318 pages  SOA guide de l'architecte Editions Dunod – 360 pages  Java SOA Cookbook Editions O'Reilly – 782 pages Formation Architecture SOA