Présentation de CORBA et de IIOP
Présentation de CORBA et de IIOP Introduction Avantages et Inconvénients Exemple d’application
Qui a crée CORBA? CORBA a été créé par l’Object Management Group (OMG).
Pourquoi CORBA ? Limites des modèles: Client-serveur traditionnel Architecture 3 tiers
Objectif de l’OMG Définir un standard (norme) d’architecture distribuée idéale, reposant sur la programmation orientée objet.
Middleware orienté objet. Concept fondamental CORBA (Common Object Request Broker Architecture) Middleware orienté objet.
L’architecture CORBA
Le bus CORBA Notion de bus logiciel (ORB) L’Object Request Architecture (ORB) est un bus logiciel permettant le dialogue entre les objets serveurs et les différents clients qui s’y connectent.
Les modules stub et skeleton L’ORB assure sa fonction grace à 2 modules spécifiques: Souche (stub) côté client Squelette (skeleton) côté serveur
Le langage IDL Le langage IDL (Interface Definition Language) permet d’exprimer, sous la forme de contrats IDL, la coopération entre les fournisseurs et les utilisateurs de services. L’IDL permet de définir les méthodes et les attributs associés aux objets que l’on souhaite partager sur le réseau.
Skeleton (partie serveur) Le langage IDL Fichier IDL Compilateur IDL Classe à implémenter Stub (partie client) Skeleton (partie serveur)
IIOP Interopérabilité: faire communiquer les différents ORB du marché (il existe plusieurs dizaines d’ORB). => protocole IIOP (Internet Inter-ORB Protocol) IIOP:standard qui ne dépend ni des langages, ni des OS, ni de l’infrastructure matérielle. IIOP est la spécialisation adapté à TCP/IP d’un protocole plus général baptisé GIOP.
Les avantages de CORBA Les inconvénients de CORBA Tendances L’architecture CORBA Les avantages de CORBA Les inconvénients de CORBA Tendances
Les avantages de CORBA Le choix du fournisseur Offre large d’ORB sur le marché Diversité des services fournis Performances et fonctionnalités
Les avantages de CORBA L’interopérabilité complète Le protocole de communication IIOP ORB IIOP Objets Données Service De transaction Service De nommage Service De notification Client IIOP
Les avantages de CORBA L’intégration aux systèmes existants Le protocole IIOP se base sur TCP/IP Encapsulation du code utilisé Existence de passerelles entre les serveurs d’objets
Les avantages de CORBA Flexibilité du développement Utilisation des interfaces
Les inconvénients de CORBA Difficulté de mise en œuvre des applications Développement bas niveau Le processus de spécification est long
Les inconvénients de CORBA Coût de développement cher Les L4Gs du Client Serveur sont privilégiés
Les inconvénients de CORBA CORBA ne contient pas de services d’administration CORBA n’offre pas les services : Tolérance aux pannes Équilibrage de charges
Tendances Apparition de Java Les EJBs
Architecture CORBA Domaines d’applications Mise en place d’une application répartie CORBA
Domaines d’applications Commerce électronique Système bancaire Pilotage des appareils via Internet
Pilotage des appareils via Internet Oscilloscope Serveur Machine à piloter Site client n°1 Site client n°2 Site client n°3
Mise en place d’une application répartie CORBA Coté serveur écriture de l’interface de l’objet IDL Compilation et Implémentation de l’IDL Réalisation du serveur CORBA Coté client Implémentation du client Réalisation du client Compilation de l’application
Coté serveur Écriture de l’IDL
Coté serveur Compilation de l’IDL Génération de deux modules module skeleton qui représente de notre objet module stub utilisée par la partie cliente implémentation Le but de l’implémentation:création de la classe objet
Coté serveur Réalisation du serveur corba
Coté client Implémentation du client Copie du fichier IDL Initialiser l’ORB : ORB_Init( ) Connexion à l’objet : Bind( ) Utilisation : appel des méthodes
Coté client Réalisation du client