Apache Camel. Entreprise Integration Patterns. Raphaël Delaporte BreizhJUG

Dimension: px
Commencer à balayer dès la page:

Download "Apache Camel. Entreprise Integration Patterns. Raphaël Delaporte BreizhJUG 07.11.2011"

Transcription

1 Apache Camel & Entreprise Integration Patterns Raphaël Delaporte BreizhJUG

2 Speaker CTO Zenika Ouest Consultant et formateur Responsable comité technique Architecture d'entreprise Domaine ESB / BPEL / SOA / Messaging / WebServices Membre comité technique OASIS AMQP Spécifications Votes 2

3 Petite précision... Apache Camel Framework Java Implémentation des EIP A ne pas confondre avec CAML... # let rec couple l1 l2 = # let match rec (l1, couple l2) l1 with l2 = match ([],_)(l1, (_,[]) l2) with -> [] (a([],_) :: q, b (_,[]) :: p) -> (a, [] b) :: couple q p;; (a :: q, b :: p) -> (a, b) :: couple q p;; 3

4 Entreprise Integration Patterns Mêmes concepts que les design patterns en conception objet Solutions éprouvées à un problème commun EIP = patterns orientés intégration d'applications Routage de messages Transformation de messages Gestion des messages Type de endpoints / channels 4

5 Entreprise Integration Patterns 5

6 Apache Camel Puissant framework Java d'intégration Implémentation des EIP Routage et médiation Création de règles DSL (Domain Specific Language) Configuration XML 6

7 Apache Camel 10 bonnes raisons d'adopter un chameau Excellent framework d'intégration Open source et gratuit (Apache Software Foundation) Support de 50 EIP Support de plus de 80 types de Endpoint (connecteurs) Création de règles très intuitives Basé sur le framework Spring Léger et puissant Excellente documentation Cycle très court de release Support de 19 langages (pour expressions et prédicats) 7

8 The Spaghettis Incident? 8

9 Fonctionnement de Camel Camel permet de relier des endpoints via des routes Statiques Dynamiques Simples Complexes Camel permet de définir des endpoints Associés à des ressources Physiques ou logiques Les endpoints et les routes sont définis dans le CamelContext (moteur Camel) 9

10 Fonctionnement de Camel Exemple de route DSL from("direct:orig").to("direct:dest"); from("direct:orig").to("direct:dest"); Définition et création du endpoint «direct:orig» Permet de relier les endpoints logiques Camel «direct:orig» au endpoint «direct:dest» Représente une route à part entière 10

11 Fonctionnement de Camel Une route DSL plus complexe... from("activemq:orig") from("activemq:orig").multicast(" 11

12 Fonctionnement de Camel Définir les routes en DSL Hériter de la classe org.apache.camel.builder.routebuilder Redéfinir la méthode abstraite configure() Un point d'entrée unique from() pour chaque route import org.apache.camel.builder.routebuilder; import org.apache.camel.builder.routebuilder; public class MaRoute extends RouteBuilder { public class MaRoute extends RouteBuilder void configure() throws Exception { public from("direct:origine") void configure() throws Exception {.to("direct:destination"); from("direct:origine") }.to("direct:destination"); } } } 12

13 Démo 13

14 Fonctionnement de Camel Création des routes L'appel de la méthode from() (qui doit être unique au sein d'une route) retourne un «processor type» Ce processor est l'action suivante qui doit être effectuée pour poursuivre l'exécution de la route Différents processors existent par défaut (to, filter, etc.) Il est possible de définir ses propres processors 14

15 Les composants de Camel Camel propose une offre extrêmement complète Plus d'une quarantaine de composants ActiveMQ, AMQP, Atom, CXF, CXFRS, File, Freemarker, FTP, Gmail, HDFS, HTTP, Imap, IRC, JBI, JDBC, JMS, LDAP, Mail, Nagios, Pop, Printer, RMI, Servlet, SFTP, SMTP, SNMP, SQL, TCP, UDP, XMPP, etc. La liste mise à jour régulièrement 15

16 Démo 16

17 Quelques endpoints... Endpoints de type ressource / protocole JMS File HTTP Endpoints logiques direct seda vm timer bean log 17

18 EIP Routage Simple 1 message à la fois stateless 1 message en sortie n messages en sortie 1 message 0 ou 1 message Parallèle Séquentiel Content based Router Message Filter Recipient List Splitter n messages à la fois statefull Moins de messages en sortie Aggregator Autant de message en sortie Resequencer Composé Parallèle Réparti les messages Composed Message Processor Diffuse les messages Scatter-Gather Prédéterminé, linéaire Routing Slip Séquentiel Possibilités infinies Process Manager 18

19 EIP Content Based Router Content Based Router Comment traiter une situation où l'implémentation d'une seule fonctionnalité est éparpillée sur plusieurs systèmes physiques? Routage basé sur le contenu Examine le contenu du message (headers ou body) Existence de champs Valeur de champs 19

20 Camel Content Based Router Content Based Router en Camel Permet de faire des choix basés sur des prédicats (conditions à satisfaire pour valider le test) choice().when(predicate).to(...).otherwise().to(...).end() choice().when(predicate).to(...).otherwise().to(...).end() Exemple from("seda:cbr") from("seda:cbr").choice().choice().when(header("ordertype").isequalto("gadget")).when(header("ordertype").isequalto("gadget")).to("seda:gadgetinventory").to("seda:gadgetinventory").when(header("ordertype").isequalto("widget")).when(header("ordertype").isequalto("widget")).to("seda:widgetinventory").to("seda:widgetinventory").otherwise().otherwise().to("seda:autre").end();.to("seda:autre").end(); 20

21 Camel Les prédicats Ensemble de conditions à évaluer Résultat binaire vrai ou faux (méthode matches) Très puissant pour créer les critères de routages Support de nombreux langages XPath, XQuery, Python, Groovy, etc. XPath import org.apache.camel.predicate; import import org.apache.camel.builder.xml.namespaces; org.apache.camel.predicate; import org.apache.camel.builder.xml.namespaces; Namespaces ns = new Namespaces("ns", " Predicate Namespaces price ns = = new ns.xpath("/ns:order/ns:price/text()='10'"); Namespaces("ns", " Predicate price = ns.xpath("/ns:order/ns:price/text()='10'"); 21

22 Camel Les prédicats La classe PredicateBuilder offre les fonctions élémentaires and, or, not, islessthan, isnull, regex, etc. Construction de prédicats import static org.apache.camel.builder.predicatebuilder.and; import import static static org.apache.camel.builder.xml.xpathbuilder.xpath; org.apache.camel.builder.predicatebuilder.and; import static org.apache.camel.builder.xml.xpathbuilder.xpath; Predicate price = xpath("/order/price/text()='10'"); Predicate Predicate ordertype price = xpath("/order/price/text()='10'"); = header("ordertype").isequalto("widget"); Predicate Predicate body ordertype = body().contains("camel"); = header("ordertype").isequalto("widget"); Predicate Predicate priceordertype body = body().contains("camel"); = and(price,ordertype); Predicate Predicate all priceordertype = and(body,priceordertype); = and(price,ordertype); Predicate all = and(body,priceordertype); 22

23 Démo 23

24 EIP Dynamic Router Dynamic Router Commenter éviter les dépendances du routeur sur toutes les destinations possibles, tout en maintenant son efficacité et sa maintenabilité? 24

25 Camel Dynamic Router Critères de routage calculés dynamiquement via une Expression (basé sur l'implémentation EIP Recipient List) recipientlist(expression) recipientlist(expression) public void configure() throws Exception { public from("seda:dynamicrouter") void configure() throws Exception { from("seda:dynamicrouter").recipientlist(new BeanExpression("dynamicRouter", "route")); }.recipientlist(new BeanExpression("dynamicRouter", "route")); } public String route(@xpath("/order/id") String orderid) { public return String "seda:out" route(@xpath("/order/id") + orderid; String orderid) { } return "seda:out" + orderid; } 25

26 EIP Possibilités infinies... Simple 1 message à la fois stateless 1 message en sortie n messages en sortie 1 message 0 ou 1 message Parallèle Séquentiel Content based Router Message Filter Recipient List Splitter n messages à la fois statefull Moins de messages en sortie Aggregator Autant de message en sortie Resequencer Composé Parallèle Réparti les messages Composed Message Processor Diffuse les messages Scatter-Gather Prédéterminé, linéaire Routing Slip Séquentiel Possibilités infinies Process Manager 26

27 Démo 27

28 EIP encore et encore... Régulateur de débit Temporisateur Répartiteur de charge Diffusion vers n récepteurs Répétition (throttler) (delayer) (loadbalancer) (multicast) (loop) 28

29 EIP et encore... Transactionnal client 29

30 Démo 30

31 Et Spring Integration dans tout ça? Spring Integration a une approche totalement différente Camel est route-oriented SI est composant-oriented (philosophie Spring) Syntaxe SI est 100% XML (pas de DSL) SI est plus fidèle aux définitions des EIP Message Channel Channel Adapter On retrouve les mêmes EIP de routage / transformation Aggregator, Splitter, Resequencer, Dynamic router 31

32 SI Concepts clés Type de Message channel Pollable channel Subscribable channel Intégration de beans Spring plus intuitive Gateway Service activator Notion native de Bridge Contrôleur de flux 32

33 Comparaison A fonctionnalités équivalentes SI est plus complexe à mettre en œuvre Moins intuitif Syntaxe XML obligatoire, plus verbeux Camel est plus plug'n'play 33

34 Démo 34

35 Questions? Merci! Et n'oubliez pas, nous vous attendons tous à la What's Next 2012 les 14 et 15 juin 35

BPEL Orchestration de Web Services

BPEL Orchestration de Web Services Orchestration de Web Services Grégory Le Bonniec gregory.lebonniec@zenika.com 26 novembre 2009 1 Zenika Conseil / Développement / Formation Localisation : Paris et Rennes Nos partenaires Mon expérience

Plus en détail

Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web»

Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web» Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web» Sana Sellami sana.sellami@lsis.org 2014-2015 Plan Partie 1: Introduction aux Services Web (SW) Partie 2: Vers une

Plus en détail

Configuration Interface for MEssage ROuting

Configuration Interface for MEssage ROuting Configuration Interface for MEssage ROuting Cahier des Charges Date : 05/04/07 Version : 1.1 Statut : diffusable Auteurs : BAGNARD Natacha FOROT Julien 1/16 Table des révisions Version Date Modifications

Plus en détail

Introduction aux «Services Web»

Introduction aux «Services Web» Introduction aux «Services Web» Sana Sellami sana.sellami@univ-amu.fr 2014-2015 Modalité de contrôle de connaissances Note de contrôle de continu Note projet Evaluation du projet la semaine du 17 novembre

Plus en détail

Intégration de systèmes

Intégration de systèmes Intégration de systèmes Préparé par: Marc Barassi, Michel Fraser, Louis Martin, Martin Simoneau Collaboration spéciale: François Boucher et Richard Boutin 3/18/14 Intégration de systèmes «L ensemble des

Plus en détail

Cours en ligne Développement Java pour le web

Cours en ligne Développement Java pour le web Cours en ligne Développement Java pour le web We TrainFrance info@wetrainfrance Programme général du cours Développement Java pour le web Module 1 - Programmation J2ee A) Bases de programmation Java Unité

Plus en détail

La démarche SOA et l interopérabilité applicative

La démarche SOA et l interopérabilité applicative La démarche SOA et l interopérabilité applicative Retour d'expérience des projets RITA / PRESTO de la Direction Générale de la Modernisation de l'état Abdelaziz Skalli Consultant Tél : +33.630.78.54.75

Plus en détail

Auto-évaluation Aperçu de l architecture Java EE

Auto-évaluation Aperçu de l architecture Java EE Auto-évaluation Aperçu de l architecture Java EE Document: f1218test.fm 22/03/2012 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION APERÇU

Plus en détail

WEBSERVICES. Michael Fortier. Master Informatique 2ème année. fortier@lipn.univ-paris13.fr A308, Université de Paris 13

WEBSERVICES. Michael Fortier. Master Informatique 2ème année. fortier@lipn.univ-paris13.fr A308, Université de Paris 13 WEBSERVICES Michael Fortier Master Informatique 2ème année fortier@lipn.univ-paris13.fr A308, Université de Paris 13 https ://lipn.univ-paris13.fr/ fortier/enseignement/webservices/ Sommaire 1 Rappels

Plus en détail

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée

Plus en détail

Mettez les évolutions technologiques au service de vos objectifs métier

Mettez les évolutions technologiques au service de vos objectifs métier Mettez les évolutions technologiques au service de vos objectifs métier 2 OXIA a pour mission de concevoir et mettre en oeuvre les meilleures solutions technologiques visant à améliorer la productivité,

Plus en détail

CQP Développeur Nouvelles Technologies (DNT)

CQP Développeur Nouvelles Technologies (DNT) ORGANISME REFERENCE STAGE : 26572 20 rue de l Arcade 75 008 PARIS CONTACT Couverture géographique : M. Frédéric DIOLEZ Bordeaux, Rouen, Lyon, Toulouse, Marseille Tél. : 09 88 66 17 40 Nantes, Lille, Strasbourg,

Plus en détail

Architecture SOA Un Système d'information agile au service des entreprises et administrations

Architecture SOA Un Système d'information agile au service des entreprises et administrations Architecture SOA Un Système d'information agile au service des entreprises et administrations www.objis.com Présentation Architecture SOA - JCertif 1 Qui sommes-nous? Spécialiste JAVA depuis 2005 (Lyon,

Plus en détail

Projet ESB - Retour d expérience

Projet ESB - Retour d expérience Projet ESB - Retour d expérience Projet de communication et d échange d informations entre SI 9 ème rencontre mondiale des logiciels libres - 02.07.2008 - ETNIC 1 Agenda Présentation 2. CFWB et ETNIC 4.

Plus en détail

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki Institut Supérieur de Gestion Cours pour 3 ème LFIG Java Enterprise Edition Introduction Bayoudhi Chaouki 1 Java EE - Objectifs Faciliter le développement de nouvelles applications à base de composants

Plus en détail

FOSS Enterprise Integration Plattaform

FOSS Enterprise Integration Plattaform FOSS Enterprise Integration Plattaform 1 Modèle architectural Visual tools Human Activity Orchestr. Integration ESB Assembly 1 JBI BC e-form BPEL Server Assembly 2 SCA Assemly 3 Enterprise Monitor MetaDB

Plus en détail

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués Architecture JEE. Objectifs attendus Serveurs d applications JEE Systèmes distribués Architectures JEE Normes JEE couches logicielles, n-tiers framework JEE et design patterns 2007/02/28 Eric Hébert.eheb@yahoo.fr

Plus en détail

Hébergement de site web Damien Nouvel

Hébergement de site web Damien Nouvel Hébergement de site web Plan L'hébergeur Le serveur web Apache Sites dynamiques 2 / 27 Plan L'hébergeur Le serveur web Apache Sites dynamiques 3 / 27 L'hébergeur L'hébergeur sous-traite l'architecture

Plus en détail

Introduction aux. services web 2 / 2

Introduction aux. services web 2 / 2 Introduction aux services web 2 / 2 1 Calendrier 2 x CM A 107 mercredi 7 janvier 2015, 08 h 00 10 h 00 : introduction sur la théorie des services web mercredi 28 janvier 2015, 08 h 00 10 h 00 : introduction

Plus en détail

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux Formation Webase 5 Ses secrets, de l architecture MVC à l application Web Adrien Grand Centrale Réseaux Sommaire 1 Obtenir des informations sur Webase 5 2 Composants de Webase 5 Un

Plus en détail

Réseaux. 1 Généralités. E. Jeandel

Réseaux. 1 Généralités. E. Jeandel 1 Généralités Réseaux Couche Application E. Jeandel Couche application Dernière couche du modèle OSI et TCP/IP Échange de messages entre processus Protocole Un protocole de niveau application doit spécifier

Plus en détail

Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée

Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée forax at univ-mlv dot fr - ParisJUG Java.next() - Mars 2012 What Else? Lambda == Inner class? Java a des lambdas depuis la version 1.1 Exemple utilisant

Plus en détail

Les processus métiers : concepts, modèles et systèmes

Les processus métiers : concepts, modèles et systèmes Les processus métiers : concepts, modèles et systèmes Organisation du cours Concepts et notations Modélisation des processus Systèmes de gestion de processus Processus transactionnels Découverte de processus

Plus en détail

IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL

IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL Un bus de services Un bus de services (ESB) permet d assembler des web services existants, le résultat de cet

Plus en détail

API04 Contribution. Apache Hadoop: Présentation et application dans le domaine des Data Warehouses. Introduction. Architecture

API04 Contribution. Apache Hadoop: Présentation et application dans le domaine des Data Warehouses. Introduction. Architecture API04 Contribution Apache Hadoop: Présentation et application dans le domaine des Data Warehouses Introduction Cette publication a pour but de présenter le framework Java libre Apache Hadoop, permettant

Plus en détail

Hassene BELGACEM. Expériences Professionnelles. JEE architect / Technical leader. Ingénieur Informatique. Cycle Préparatoire

Hassene BELGACEM. Expériences Professionnelles. JEE architect / Technical leader. Ingénieur Informatique. Cycle Préparatoire Objectifs Formations Expériences Professionnelles Hassene BELGACEM http://belgacem.hassene.netcv.com S intégrer dans une équipe de développement de haute compétence et participer activement dans la réalisation

Plus en détail

Nouvelles technologies pour l intégration : les ESB

Nouvelles technologies pour l intégration : les ESB 10, avenue de l Europe Parc Technologique du Canal 31520 Ramonville st Agne 05.61.28.56.20 05.61.28.56.00 www.ebmwebsourcing.com Nouvelles technologies pour l intégration : les ESB EBM Websourcing Sommaire

Plus en détail

JavaServer Pages (JSP)

JavaServer Pages (JSP) JavaServer Pages (JSP) XVIII-1 Prérequis pour ce cours Ce cours a trait à la programmation Java coté serveur Il faut connaître un minimum de technologie J2EE Il faut connaître les servlets XVIII-2 Motivation

Plus en détail

30 ans d ingénierie, 23 ans de conseil en architecture de SI

30 ans d ingénierie, 23 ans de conseil en architecture de SI Michel LABARRE 56 ans Tel +33 6 83 48 65 44 Mail michel.labarre@gmail.com Web http://mlabarre.fr Architecte Direction de projets Conception Développement Conseil 30 ans d ingénierie, 23 ans de conseil

Plus en détail

L Orchestration de Services Web avec Orchestra. Goulven Le Jeune Orchestra Project Manager

L Orchestration de Services Web avec Orchestra. Goulven Le Jeune Orchestra Project Manager L Orchestration de Services Web avec Orchestra Goulven Le Jeune Orchestra Project Manager D1 Bull, Architecte d un Monde Ouvert : contributeur et acteur majeur de l'open Source Applications métiers Infrastructures

Plus en détail

Urbanisme du Système d Information et EAI

Urbanisme du Système d Information et EAI Urbanisme du Système d Information et EAI 1 Sommaire Les besoins des entreprises Élément de solution : l urbanisme EAI : des outils au service de l urbanisme 2 Les besoins des entreprises 3 Le constat

Plus en détail

Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source JShaft

Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source JShaft Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source Jérôme Petit, Serge Petit & Serli Informatique, ITMatic Jérôme Petit, Serge Petit & SERLI & ITMatic Serli : SSII

Plus en détail

Environnements de Développement

Environnements de Développement Institut Supérieur des Etudes Technologiques de Mahdia Unité d Enseignement: Environnements de Développement BEN ABDELJELIL HASSINE Mouna m.bnaj@yahoo.fr Développement des systèmes d Information Syllabus

Plus en détail

Mise en œuvre des serveurs d application

Mise en œuvre des serveurs d application Nancy-Université Mise en œuvre des serveurs d application UE 203d Master 1 IST-IE Printemps 2008 Master 1 IST-IE : Mise en œuvre des serveurs d application 1/54 Ces transparents, ainsi que les énoncés

Plus en détail

Architecture Orientée Service, JSON et API REST

Architecture Orientée Service, JSON et API REST UPMC 3 février 2015 Précedemment, en LI328 Architecture générale du projet Programmation serveur Servlet/TOMCAT Aujourd hui Quelques mots sur les SOA API - REST Le format JSON API - REST et Servlet API

Plus en détail

Exécution de processus

Exécution de processus Exécution de processus Electif SOA Cécile Hardebolle cecile.hardebolle@supelec.fr Programme 21 jan. 22 jan. Introduction. Enjeux, rôle de l'architecte SI Partie n 1 du cas d'étude Architectures applicatives

Plus en détail

Exécution de processus

Exécution de processus Exécution de processus Mineure SOA Cécile Hardebolle cecile.hardebolle@supelec.fr Programme 8 nov. 15 nov. Introduction. Enjeux, rôle de l'architecte SI Partie n 1 du cas d'étude Architecture et cartographie

Plus en détail

Messagerie asynchrone et Services Web

Messagerie asynchrone et Services Web Article Messagerie asynchrone et Services Web 1 / 10 Messagerie asynchrone et Services Web SOAP, WSDL SONT DES STANDARDS EMERGEANT DES SERVICES WEB, LES IMPLEMENTATIONS DE CEUX-CI SONT ENCORE EN COURS

Plus en détail

Formation en Logiciels Libres. Fiche d inscription

Formation en Logiciels Libres. Fiche d inscription République Tunisienne Ministère de l'industrie et la Technologie - Secrétariat d'état de la Technologie Unité des Logiciels Libres Formation en Logiciels Libres Fiche d inscription (Une fiche par candidat)

Plus en détail

NOVA BPM. «Première solution BPM intégr. Pierre Vignéras Bull R&D

NOVA BPM. «Première solution BPM intégr. Pierre Vignéras Bull R&D NOVA BPM «Première solution BPM intégr grée» Pierre Vignéras Bull R&D Définitions Business Process Pratiques existantes qui permettent aux personnes et systèmes de travailler ensemble Business Process

Plus en détail

Introduction aux Technologies de l Internet

Introduction aux Technologies de l Internet Introduction aux Technologies de l Internet Antoine Vernois Université Blaise Pascal Cours 2006/2007 Introduction aux Technologies de l Internet 1 Au programme... Généralités & Histoire Derrière Internet

Plus en détail

Présentation d'un MOM open-source

Présentation d'un MOM open-source Présentation d'un MOM open-source Saber Dir - Victor Laborie - Guillaume Penaud Licence ASRALL 25 mars 2015 Middleware Orientés Message 25 mars 2015 1 / 29 Sommaire 1 Introduction 2 Etat de l'art 3 Maquette

Plus en détail

Architectures web/bases de données

Architectures web/bases de données Architectures web/bases de données I - Page web simple : HTML statique Le code HTML est le langage de base pour concevoir des pages destinées à être publiées sur le réseau Internet ou intranet. Ce n'est

Plus en détail

pythonocc: une plateforme de développement agile d applications CAO.

pythonocc: une plateforme de développement agile d applications CAO. pythonocc: une plateforme de développement agile d applications CAO. PyConFR 2009 Cité des Sciences et de l Industrie, Paris Thomas Paviot*, Jelle Feringa* *pythonocc project: tpaviot@gmail.com; jelleferinga@gmail.com

Plus en détail

les techniques d'extraction, les formulaires et intégration dans un site WEB

les techniques d'extraction, les formulaires et intégration dans un site WEB les techniques d'extraction, les formulaires et intégration dans un site WEB Edyta Bellouni MSHS-T, UMS838 Plan L extraction des données pour un site en ligne Architecture et techniques Les différents

Plus en détail

JOnAS 5. Serveur d application d

JOnAS 5. Serveur d application d JOnAS 5 Serveur d application d dynamique Agenda En quelques mots Caractéristiques essentielles Zoom sur le versioning 2 Bull, 2008 Serveur d application dynamique JOnAS - Serveur d application Open Source

Plus en détail

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/

Plus en détail

Compte Rendu d intégration d application

Compte Rendu d intégration d application ISMA 3EME ANNEE Compte Rendu d intégration d application Compte Rendu Final Maxime ESCOURBIAC Jean-Christophe SEPTIER 19/12/2011 Table des matières Table des matières... 1 Introduction... 3 1. Le SGBD:...

Plus en détail

MQPerf un outil de diagnostic en mode SaaS des performances optimales du MOM JORAM

MQPerf un outil de diagnostic en mode SaaS des performances optimales du MOM JORAM MQPerf un outil de diagnostic en mode SaaS des performances optimales du MOM JORAM Solutions Linux 20 juin 2012 Serge Lacourte Directeur Général serge.lacourte@scalagent.com www.scalagent.com Plan JORAM

Plus en détail

Mineure Architectures Orientées Services SOA Exécution de processus. Mineure SOA. Exécution de processus

Mineure Architectures Orientées Services SOA Exécution de processus. Mineure SOA. Exécution de processus Mineure SOA Exécution de processus Idir AIT SADOUNE idir.aitsadoune@supelec.fr Idir AIT SADOUNE - Plan 1 Qu'est-ce qu'exécuter un processus? 2 Moteur de workflow 3 Moteur d'orchestration,

Plus en détail

CAHIER DES CHARGES D IMPLANTATION

CAHIER DES CHARGES D IMPLANTATION CAHIER DES CHARGES D IMPLANTATION Tableau de diffusion du document Document : Cahier des Charges d Implantation EVRP Version 6 Etabli par DCSI Vérifié par Validé par Destinataires Pour information Création

Plus en détail

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations

Plus en détail

Description de la formation

Description de la formation Description de la formation Modalités Ce parcours de formation est un parcours en alternance, d une durée de 2ans, à raison d une semaine de formation par mois, soit 770 heures et de trois semaines de

Plus en détail

Système d échange inter-administration avec Petals ESB

Système d échange inter-administration avec Petals ESB Système d échange inter-administration avec Petals ESB La plateforme RITA à la DGME Abdelaziz Skalli Consultant Tél : +33.630.78.54.75 abdelaziz.skalli@logica.com Logica 2008. All rights reserved Sommaire

Plus en détail

SQL Parser XML Xquery : Approche de détection des injections SQL

SQL Parser XML Xquery : Approche de détection des injections SQL SQL Parser XML Xquery : Approche de détection des injections SQL Ramahefy T.R. 1, Rakotomiraho S. 2, Rabeherimanana L. 3 Laboratoire de Recherche Systèmes Embarqués, Instrumentation et Modélisation des

Plus en détail

Business Process Execution Language

Business Process Execution Language Business Process Execution Language Rapport du projet de systèmes distribués d information Markus Lindström 6 mai 2009 Motivation personnelle Le sujet que j ai retenu et présenté dans le cadre du cours

Plus en détail

LE CENTRE DE RÉFÉRENCE PROFESSIONNELLE TIC DE BRUXELLES TAKE I.T. EASY FORMATION TECHNIQUES IT & WEB POUR INFORMATICIENS

LE CENTRE DE RÉFÉRENCE PROFESSIONNELLE TIC DE BRUXELLES TAKE I.T. EASY FORMATION TECHNIQUES IT & WEB POUR INFORMATICIENS LE CENTRE DE RÉFÉRENCE PROFESSIONNELLE TIC DE BRUXELLES TAKE I.T. EASY FORMATION TECHNIQUES IT & WEB POUR INFORMATICIENS 2 0 1 5 Evoliris asbl est le Centre de Référence professionnelle Bruxellois dans

Plus en détail

Drive your success. «Un écosystème complexe implique une capacité de gestion temps réel des aléas» www.imagina-international.com

Drive your success. «Un écosystème complexe implique une capacité de gestion temps réel des aléas» www.imagina-international.com Drive your success «Un écosystème complexe implique une capacité de gestion temps réel des aléas» www.imagina-international.com ATEN, dix avantages au service de votre entreprise Qualité de mise en œuvre

Plus en détail

ANALYSTE PROGRAMMEUR DIPLÔME D ÉTABLISSEMENT

ANALYSTE PROGRAMMEUR DIPLÔME D ÉTABLISSEMENT école sciences industrielles & technologies de l information ANALYSTE PROGRAMMEUR DIPLÔME D ÉTABLISSEMENT Crédit : 120 ECTS Code DIE20 Niveau d entrée : Bac Niveau de sortie : Bac + 2 EN VAE Diplômes accessibles

Plus en détail

Module BD et sites WEB

Module BD et sites WEB Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD

Plus en détail

Composants Logiciels. Le modèle de composant de CORBA. Plan

Composants Logiciels. Le modèle de composant de CORBA. Plan Composants Logiciels Christian Pérez Le modèle de composant de CORBA Année 2010-11 1 Plan Un rapide tour d horizon de CORBA 2 Introduction au modèle de composant de CORBA Définition de composants CORBA

Plus en détail

Hébergement de sites Web

Hébergement de sites Web Hébergement de Solutions complètes et évolutives pour l hébergement de sites Web dynamiques et de services Web sécurisés. Fonctionnalités Serveur Web Apache hautes performances Apache 1. et.0 1 avec prise

Plus en détail

«Clustering» et «Load balancing» avec Zope et ZEO

«Clustering» et «Load balancing» avec Zope et ZEO «Clustering» et «Load balancing» avec Zope et ZEO IN53 Printemps 2003 1 Python : généralités 1989 : Guido Van Rossum, le «Python Benevolent Dictator for Life» Orienté objet, interprété, écrit en C Mêle

Plus en détail

Oléane VPN : Les nouvelles fonctions de gestion de réseaux. Orange Business Services

Oléane VPN : Les nouvelles fonctions de gestion de réseaux. Orange Business Services Oléane VPN : Les nouvelles fonctions de gestion de réseaux Orange Business Services sommaire 1. Qu'est-ce que la fonction serveur/relais DHCP? Comment cela fonctionne-t-il?...3 1.1. Serveur DHCP...3 1.2.

Plus en détail

Intégration d'applications à "gros grain" Unité d'intégration : le "service" (interface + contrat)

Intégration d'applications à gros grain Unité d'intégration : le service (interface + contrat) Motivations Motivations Intégration d'applications à "gros grain" Unité d'intégration : le "service" (interface + contrat) Contraintes Applications conçues indépendamment, sans avoir prévu une intégration

Plus en détail

Découverte de réseaux IPv6

Découverte de réseaux IPv6 HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet Découverte de réseaux IPv6 Nicolas Collignon

Plus en détail

LINUX REDHAT, SERVICES RÉSEAUX/INTERNET

LINUX REDHAT, SERVICES RÉSEAUX/INTERNET LINUX REDHAT, SERVICES RÉSEAUX/INTERNET Réf: LIH Durée : 4 jours (7 heures) OBJECTIFS DE LA FORMATION Ce cours pratique vous permettra de maîtriser le fonctionnement des services réseaux sous Linux RedHat.

Plus en détail

SOAP Concepts Application à Glassfish

SOAP Concepts Application à Glassfish SOAP Concepts Application à Glassfish LicencePro 2014 Olivier Perrin Université de Lorraine Évolution From server-side app to smart clients and services 2 Browser-based HTML Rendering (progressive enhancement)

Plus en détail

WHITE PAPER. Démocratiser l ESB

WHITE PAPER. Démocratiser l ESB WHITE PAPER Démocratiser l ESB INTRODUCTION... 3 FACTEURS MOTEURS DE LA DEMOCRATISATION DE L ESB... 4 CHANGER LE MODELE ECONOMIQUE DE L INTEGRATION... 5 DEMOCRATISER L INTEGRATION AVEC TALEND ESB... 6

Plus en détail

Auto-évaluation Programmation en Java

Auto-évaluation Programmation en Java Auto-évaluation Programmation en Java Document: f0883test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION PROGRAMMATION EN

Plus en détail

Principes. 2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA. Programmation en Corba. Stéphane Vialle

Principes. 2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA. Programmation en Corba. Stéphane Vialle 2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA Stéphane Vialle Stephane.Vialle@supelec.fr http://www.metz.supelec.fr/~vialle 1 Principes 2 Architecture 3 4 Aperçu d utilisation

Plus en détail

PROJET : ETNIC ESB JANUS. Guide technique : WS-Notification - Clustering. BULL Services et Solutions

PROJET : ETNIC ESB JANUS. Guide technique : WS-Notification - Clustering. BULL Services et Solutions PROJET : ETNIC ESB JANUS Guide technique : WS- BULL Services et Solutions Date : 20 novembre 2008 Version : 1.0 Référence Bull : ETNIC_ESB/ANA/00 Auteur : NOSEDA Anne Projet ETNIC ESB JANUS Guide technique

Plus en détail

! " # $ % & OPN Day Paris 14 mars 2006

!  # $ % & OPN Day Paris 14 mars 2006 '! " # $ % & L information en entreprise X2/an 40% 70% X5 Quelques chiffres! "# $ % &' )# $ * +*!% &' ' (! La voie de la Collaboration Solutions différentiées Plateforme intégrée Email & Calendrier Portails

Plus en détail

De 20 000 à 4 millions. Khanh Tuong Maudoux @jetoile

De 20 000 à 4 millions. Khanh Tuong Maudoux @jetoile De 20 000 à 4 millions Khanh Tuong Maudoux @jetoile 2 Qui suis- Khanh Tuong Maudoux Développeur Java indépendant blog : http://blog.jetoile.fr @jetoile khanh.maudoux@jetoile.fr 3 Contexte Collecteur Stockage

Plus en détail

OASIS www.oasis-open.org/committees/xacml/docs/docs.shtml Date de publication

OASIS www.oasis-open.org/committees/xacml/docs/docs.shtml Date de publication Statut du Committee Working Draft document Titre XACML Language Proposal, version 0.8 (XACML : XML Access Control Markup Language) Langage de balisage du contrôle d'accès Mot clé Attestation et sécurité

Plus en détail

Intranet / Groupware. 14-09-98 LORIA - Université d automne 1998 - Intranet/Groupware - L. Mirtain 1

Intranet / Groupware. 14-09-98 LORIA - Université d automne 1998 - Intranet/Groupware - L. Mirtain 1 Intranet / Groupware 14-09-98 LORIA - Université d automne 1998 - Intranet/Groupware - L. Mirtain 1 Groupware On peut difficilement parler de groupware sans parler d intranet intranet/groupware les fonctions

Plus en détail

Conception Exécution Interopérabilité. Déploiement. Conception du service. Définition du SLA. Suivi du service. Réception des mesures

Conception Exécution Interopérabilité. Déploiement. Conception du service. Définition du SLA. Suivi du service. Réception des mesures Software propose une offre d intégration unique, qui apporte l équilibre parfait entre investissements et performances pour les entreprises qui doivent sans cesse améliorer leurs processus. Des caractéristiques

Plus en détail

Architecture applicative et Cartographie

Architecture applicative et Cartographie Architecture applicative et Cartographie Mineure SOA Idir AIT SADOUNE idir.aitsadoune@supelec.fr Programme 7 nov. 14 nov. 21 nov. Introduction. Enjeux, rôle de l'architecte SI Partie n 1 du cas d'étude

Plus en détail

RMI le langage Java XII-1 JMF

RMI le langage Java XII-1 JMF Remote Method Invocation (RMI) XII-1 Introduction RMI est un ensemble de classes permettant de manipuler des objets sur des machines distantes (objets distants) de manière similaire aux objets sur la machine

Plus en détail

Programme formation pfsense Mars 2011 Cript Bretagne

Programme formation pfsense Mars 2011 Cript Bretagne Programme formation pfsense Mars 2011 Cript Bretagne I.Introduction : les réseaux IP...2 1.A.Contenu pédagogique...2 1.B....2 1.C...2 1.D....2 II.Premiers pas avec pfsense...2 2.A.Contenu pédagogique...2

Plus en détail

Spécifications Techniques Générales. Techno Pole Internet. Lycée Djignabo / Ziguinchor

Spécifications Techniques Générales. Techno Pole Internet. Lycée Djignabo / Ziguinchor Techno Pole Internet Lycée Djignabo / Ziguinchor Sommaire 1 ARCHITECTURE LOGICIELLE 2 1.1 APACHE, UN SERVEUR POLYVALENT, PERFORMANT ET MONDIALEMENT RECONNU 2 1.2 ARCHITECTURE LOGICIELLE DU SERVEUR 2 1.3

Plus en détail

Rapport de veille technologique

Rapport de veille technologique Centres de compétences TIC Région wallonne, BE Rapport de veille technologique Architectures Orientées Services SOA / ESB Réalisé par Vivansa s.p.r.l. (www.vivansa.com) Simply because you need results.

Plus en détail

Présentation du ResEl

Présentation du ResEl Présentation du ResEl Historique et situation actuelle Communication à travers le réseau Réseau local et réseau école Internet Garbage Messageries instantanées (IRC et jabber) Serveur mail Connexion à

Plus en détail

Architecture et Extensions d ArcGIS Server

Architecture et Extensions d ArcGIS Server Architecture et Extensions d ArcGIS Server Plan de la présentation Présentation Générale ArcGIS Server Deconstructed Architecture et retours d expérience Execution (LoadBalancing // FailOver) Securité

Plus en détail

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014 pascal.dayre@enseeiht.

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014 pascal.dayre@enseeiht. Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS IDS2014, Nailloux 26-28/05/2014 pascal.dayre@enseeiht.fr 1 MVC et le web 27/05/14 2 L'évolution des systèmes informatiques

Plus en détail

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie 1 / 22 Technologies Web Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya Université Pierre et Marie Curie Rappel 2 / 22 Problématique Quelles technologies utiliser

Plus en détail

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object) Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07

Plus en détail

Le 09 et 10 Décembre 09

Le 09 et 10 Décembre 09 Séminaire de 2 jours Le 09 et 10 Décembre 09 Mettez les évolutions technologiques au service de vos objectifs métier 2 OXIA a pour mission de concevoir et mettre en œuvre les meilleures solutions technologiques

Plus en détail

JOnAS 5 Enterprise OSGi javaee compliant

JOnAS 5 Enterprise OSGi javaee compliant JOnAS 5 Enterprise OSGi javaee compliant Agenda Introduction Architecture JOnAS 5 Embarqué 2 Bull, 2009 Diffusion non autorisée sans accord préalable Serveur d'application de classe entreprise - 1er serveur

Plus en détail

Intergiciel - concepts de base

Intergiciel - concepts de base Intergiciel - concepts de base Ada Diaconescu, Laurent Pautet & Bertrand Dupouy ada.diaconescu _at_ telecom-paristech.fr Rappel : système réparti Système constitué de multiples ressources informatiques

Plus en détail

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la

Plus en détail

Ch2 La modélisation théorique du réseau : OSI Dernière maj : jeudi 12 juillet 2007

Ch2 La modélisation théorique du réseau : OSI Dernière maj : jeudi 12 juillet 2007 Ch2 La modélisation théorique du réseau : OSI Dernière maj : jeudi 12 juillet 2007 I. LA NORMALISATION... 1 A. NORMES... 1 B. PROTOCOLES... 2 C. TECHNOLOGIES RESEAU... 2 II. LES ORGANISMES DE NORMALISATION...

Plus en détail

Simplifier l intégration des systèmes RH et garantir une version unique des données de l employé. D

Simplifier l intégration des systèmes RH et garantir une version unique des données de l employé. D Simplifier l intégration des systèmes RH et garantir une version unique des données de l employé. D ésormais, les entreprises utilisent des solutions variées pour gérer les multiples aspects des ressources

Plus en détail

Informatique en nuage Cloud Computing. G. Urvoy-Keller

Informatique en nuage Cloud Computing. G. Urvoy-Keller Informatique en nuage Cloud Computing G. Urvoy-Keller Sources de ce documents Next Stop, the cloud Objectifs de l'étude : Comprendre la popularité des déploiements de services basés sur des clouds Focus

Plus en détail

Java et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour http://cuiwww.unige.

Java et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour http://cuiwww.unige. : JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java Michel Bonjour http://cuiwww.unige.ch/~bonjour Plan JDBC: API bas niveau pour l accès aux BD (SQL) - Introduction - JDBC et : Java, ODBC, SQL

Plus en détail

Web Tier : déploiement de servlets

Web Tier : déploiement de servlets Web Tier : déploiement de servlets 1 / 35 Plan 1 Introduction 2 Servlet : Principe de fonctionnement 3 Création et développement sur un serveur JEE 4 Quelques méthodes de l API des servlets 5 Utilisation

Plus en détail

Introduction à la plateforme J2EE

Introduction à la plateforme J2EE Introduction à la plateforme J2EE Auteur : Oussama Essefi Directeur technique Expert Consulting Oussama.essefi@expert-consulting.biz Copyright 2010 Expert Consulting Page 1 1. Introduction 1.1. Pourquoi

Plus en détail

Jean-Philippe VIOLET Solutions Architect

Jean-Philippe VIOLET Solutions Architect Jean-Philippe VIOLET Solutions Architect IBM Cognos: L' Expertise de la Gestion de la Performance Acquis par IBM en Janvier 08 Rattaché au Brand Information Management Couverture Globale 23,000 clients

Plus en détail

SITE WEB E-COMMERCE ET VENTE A DISTANCE

SITE WEB E-COMMERCE ET VENTE A DISTANCE Développement d une application JAVA EE SITE WEB E-COMMERCE ET VENTE A DISTANCE PLAN PROJET Binôme ou monôme (B/M): M Nom & Prénom : AIT NASSER Btissam Email : aitnasser.btissam123@gmail.com GSM : Organisme

Plus en détail

Fouillez facilement dans votre système Big Data. Olivier TAVARD

Fouillez facilement dans votre système Big Data. Olivier TAVARD Fouillez facilement dans votre système Big Data Olivier TAVARD A propos de moi : Cofondateur de la société France Labs Développeur (principalement Java) Formateur en technologies de moteurs de recherche

Plus en détail