Pr - PowerPoint PPT Presentation

1 / 53
About This Presentation
Title:

Pr

Description:

An overview of CORBA Portable Object Adapter Pr sentation de l article crit par Irfan Pyarali et Douglas C. Schmidt DESS BD-IA HOARAU Patrice et PRATA Louis – PowerPoint PPT presentation

Number of Views:65
Avg rating:3.0/5.0
Slides: 54
Provided by: le2iCnrsF
Category:
Tags: dess

less

Transcript and Presenter's Notes

Title: Pr


1
An overview of CORBA Portable Object Adapter
  • Présentation de larticle écrit par
  • Irfan Pyarali et Douglas C. Schmidt

DESS BD-IA HOARAU Patrice et PRATA Louis
2
  • Sommaire
  • Introduction
  • Larchitecture CORBA
  • Aperçu de ladaptateur dobjets
  • Les objectifs de POA
  • Larchitecture de POA
  • Fonctionnement dun POA
  • Définition dun POA pour un ORB temps réel
  • Conclusion

3
Introduction
  • CORBA Standard porté par lOMG
  • Première version en 1991
  • Fournit un point vue uniforme au sein de
    systèmes hétérogènes

4
  1. Larchitecture CORBA
  • Les ORBs CORBA permettent à des clients
    dinvoquer des opérations sur des objets
    distribués sans que ceux-ci naient à se soucier
    de savoir
  • Où sont localisés les objets
  • Quel langage implémente les objets
  • Sur quel OS sexécutent les objets
  • Quels sont les protocoles de communication et
    leurs interconnections
  • Sur quel matériel sexécutent les objets

5
  • Architecture CORBA (suite)

Modèle de référence CORBA
6
  • Architecture CORBA (suite)
  • Client
  • Récupère les références sur objets
  • Exécute des opérations sur ceux-ci
  • Objet-gtoperation(arg)

7
  • Architecture CORBA (suite)
  • Client
  • Objet (Instance dune interface IDL)
  • une référence
  • un ObjectID
  • une implémentation

8
  • Architecture CORBA (suite)
  • Client
  • Objet
  • servant
  • Implémente les opérations définies par
    linterface IDL

9
  • Architecture CORBA (suite)
  • Client
  • Objet
  • servant
  • Noyau ORB
  • Achemine la requête du client vers lobjet
  • Renvoie la réponse au client
  • Utilise le protocole GIOP et surtout IIOP

10
  • Architecture CORBA (suite)

Modèle de référence CORBA
11
  • Architecture CORBA (suite)
  • Linterface de lORB
  • Initialise et termine lORB
  • Convertit les références dobjets en chaînes de
    caractères et vice et versa
  • Créé la liste des arguments pour les requêtes
    faites via DII

12
  • Architecture CORBA (suite)
  • Linterface de lORB
  • Les Stubs et Skeletons
  • Stub converti les paramètres pour lORB
  • Skeleton comportement inverse du stub

13
  • Architecture CORBA (suite)
  • Linterface de lORB
  • Les Stubs et Skeletons
  • Le compilateur IDL

14
  • Architecture CORBA (suite)
  • Linterface de lORB
  • Les Stubs et Skeletons
  • Le compilateur IDL
  • Linterface dinvocation dynamique (DII)
  • Permet aux clients de générer des requêtes à
    lexécution

15
  • Architecture CORBA (suite)

Modèle de référence CORBA
16
  • Architecture CORBA (suite)
  • Dynamic Skeleton Interface (DSI)
  • Du coté serveur, analogue au DII du coté client
  • Permet à un ORB de délivrer des requêtes à des
    servants qui implémentent une interface IDL
    inconnue à la compilation.

17
  • Architecture CORBA (suite)
  • Dynamic Skeleton Interface (DSI)
  • Object Adapter
  • Associe un servant avec des objets
  • Demultiplexe les requêtes entrantes vers le
    servant

18
  • Architecture CORBA (suite)
  • Dynamic Skeleton Interface (DSI)
  • Object Adapter
  • Interface Repository
  • Fournit à lexécution des informations sur les
    interfaces IDL

19
  • Architecture CORBA (suite)
  • Dynamic Skeleton Interface (DSI)
  • Object Adapter
  • Interface Repository
  • Implementation Repository
  • Contient les informations permettant à un ORB
    dactiver des serveurs pour exécuter des servants.

20
  • Architecture CORBA (suite)

Modèle de référence CORBA
21
  • Aperçu de lObject Adapter
  • Fonctionnalités dun Object Adapter
  • Portable Object Adapter

22
  • Aperçu de lObject Adapter
  • Fonctionnalités dun Object Adapter
  • Génération des références dobjets

23
  • Aperçu de lObject Adapter
  • Fonctionnalités dun Object Adapter
  • Génération des références dobjets
  • Activation et désactivation des servants

24
  • Aperçu de lObject Adapter
  • Fonctionnalités dun Object Adapter
  • Génération des références dobjets
  • Activation et désactivation des servants
  • Demultiplexage des requêtes vers les servants

25
  • Aperçu de lObject Adapter
  • Fonctionnalités dun Object Adapter
  • Génération des références dobjets
  • Activation et désactivation des servants
  • Demultiplexage des requêtes vers les servants
  • Invoque les opérations sur le servant
  • A laide du skeleton, transforme les paramêtres
    de la requête en arguments pour lappel de
    lopération sur le servant

26
  • Aperçu de lObject Adapter
  • Fonctionnalités dun Object Adapter
  • Portable Object Adapter
  • Prédécesseur BOA (Basic OA)
  • Incomplet et sous spécifié
  • Profusion dextensions et dinterprétations
    incompatibles en elles
  • Abandon du BOA au profit du POA
  • Standardisation des fichiers générés
  • par le compilateur IDL

27
  • Les objectifs dun POA
  • La portabilité des servants vis à vis des ORBs
  • Un servant peut fonctionner sur tout type dORB
    sans modification
  • Ce manque était le principal point faible du BOA

28
  • Les objectifs dun POA
  • La portabilité
  • Persistance des Objets

29
  • Les objectifs dun POA
  • La portabilité
  • Persistance des objets
  • Automatisation
  • Activation transparente des objets

30
  • Les objectifs dun POA
  • La portabilité
  • Persistance des objets
  • Automatisation
  • Conservation des ressources
  • Un servant peut supporter plusieurs Object Ids
    simultanément

31
  • Les objectifs dun POA
  • Flexibilité

32
  • Les objectifs dun POA
  • Flexibilité
  • Fonctionnement soumis à des règles

33
  • Les objectifs dun POA
  • Flexibilité
  • Fonctionnement soumis à des règles
  • POAs imbriqués
  • Sur un serveur, peuvent coexister de multiples
    instances de POA
  • Ces instances peuvent être imbriquées
  • Namespace
  • Destruction en cascade des POAs

34
  • Les objectifs dun POA
  • Flexibilité
  • Fonctionnement soumis à des règles
  • POAs imbriqués
  • Support des SSI et DSI
  • Choix dutilisation de skeletons statiques (SSI)
    ou dynamiques (DSI)
  • Héritage dune classe définie par SSI ou DSI

35
  • Larchitecture dun POA

36
  • Larchitecture dun POA
  • Le gestionnaire de POA
  • Adapter Activator
  • Le gestionnaire de servants

37
  • Larchitecture dun POA
  • Les règles des POAs (Policies)
  • Threading policy
  • Lifespan policy
  • Object Id uniqueness policy
  • Object Id Assignment policy
  • Implicit Activation policy
  • Servant retention policy
  • Request processing policy

38
  • Fonctionnement dun POA
  • Exécution des requêtes
  • Localisation du serveur
  • Recherche du processeur par lORB

39
  • Fonctionnement dun POA
  • Exécution des requêtes
  • Localisation du serveur
  • Localisation du POA
  • LORB recherche le POA sur le serveur
  • Sil nexiste pas, il le crée (adapter activator)

40
  • Fonctionnement dun POA
  • Exécution des requêtes
  • Localisation du serveur
  • Localisation du POA
  • Localisation du Servant
  • La requête est émise au POA qui localise le
    Servant

41
  • Fonctionnement dun POA
  • Exécution des requêtes
  • Localisation du serveur
  • Localisation du POA
  • Localisation du Servant
  • Localisation du Skeleton
  • Localise lIDL Skeleton qui transforme les
    paramètres en arguments
  • Lopérateur est alors invoqué

42
  • Fonctionnement dun POA
  • Exécution des requêtes
  • Localisation du serveur
  • Localisation du POA
  • Localisation du Servant
  • Localisation du Skeleton
  • Gestion des retours, des exceptions et des
    forwarding

43
  • Fonctionnement dun POA
  • Création des références
  • Création explicite
  • Crée une référence sans quil y ait une
    correspondance entre lobjet et le servant

44
  • Fonctionnement dun POA
  • Création des références
  • Création explicite
  • Activation explicite
  • Le serveur active un servant en lui associant un
    Objet
  • Une fois activé, le servant est associé à la
    référence

45
  • Fonctionnement dun POA
  • Création des références
  • Création explicite
  • Activation explicite
  • Activation implicite
  • Le serveur crée un Objet ID quil associe au
    servant et active lobjet

46
  • Fonctionnement dun POA
  • Création des références
  • Création explicite
  • Activation explicite
  • Activation implicite
  • Une fois la référence créée, elle peut être
    exportée au client par
  • LOMG Naming and Trading Service
  • Conversion en chaine de caractères
  • Invocation dune méthode à distance

47
  • POA pour un ORB Temps-réel (TAO)
  • Démultiplexage efficace des requêtes
  • ORB classique
  • Analyse redondante des requêtes
  • ORB core localise lOA, le servant et le skeleton
  • Le skeleton IDL localise lopération à effectuer

48
  • POA pour un ORB Temps-réel (TAO)
  • Démultiplexage efficace des requêtes
  • ORB classique
  • Problème de performance dans lextraction en
    couche car pour chaque requête
  • Recherche importante dans les tables
  • Extraction successive
  • Problème de priorité (non géré sur les niveau
    supérieur)
  • Soit, le démultiplexage occupe 17 de la charge
    du serveur

49
  • POA Temps-réel (TAO)
  • Démultiplexage efficace des requêtes

50
  • POA pour un ORB Temps-réel (TAO)
  • Démultiplexage efficace des requêtes
  • Le TAO (The ACE ORB,Stratégie optimisée de
    démultiplexage)
  • 2 possibilités
  • Perfect hashing
  • 1) hachage pour localiser le servant
  • 2) hachage pour localiser l'opérateur
  • Active démultiplexing
  • un descripteur donné par le client identifie
    directement le servant. La localisation du
    servant et de lopération se fait dune traite.

51
  • POA Temps-réel (TAO)
  • Démultiplexage efficace des requêtes

52
Conclusion
  • Les OA
  • - Génèrent et interprètent les références d
    objets
  • - Active désactive le servant
  • - Démultiplexe les requêtes
  • - Collabore avec les skeletons pour linvocation
    des opérations

53
Conclusion
  • Les POA
  • Il est basé sur l expérience des utilisateurs de
    BOA
  • Définit les  policies  (règles) permettant
    dadapter le fonctionnement dun ORB à des
    traitements spécifiques.
  • Optimisation du POA pour fonctionner avec le TAO
Write a Comment
User Comments (0)
About PowerShow.com