Java - RMI Remote Method Invocation. Java - RMI

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

Download "Java - RMI Remote Method Invocation. Java - RMI"

Transcription

1 Remote Method Invocation Yann Viémont Université de Versailles St-Quentin Plan 1. Introduction 2. Rappels sur les RPC 3. Le modèle objet de Java-RMI 4. Architecture générale

2 1. Introduction = Disponible à partir de la version 1.1 du JDK de Sun (1995) = Concurrent de CORBA et DCOM (.NET) pour offrir un système d objets distribués = Conçu pour un environnement homogène de machines virtuelles Java Multiplateforme / Monolangage = Sécurité et disponibilité (RMI Security Manager) = Compatible avec le modèle objet de Java Polymorphisme, instanceof, GC distribué, = Intégration des standards Internet Fonctionnalité = Obtention de références sur les objets serveurs = Invocation de méthode à distance = Invocation sans compilation = Importation / exportation / transmission dynamique d objets Par référence ou par copie = Intégration au modèle objet de Java = Préservation de l intégrité des références = Importation / exportation / transmission dynamique de comportement (code) = Cycle de vie des objets distants Activation / Passivation / Persistance

3 Objectifs Le mécanisme doit permettre les opérations de base suivantes : = Obtenir une référence sur un objet distant = Invoquer à distance une méthode sur cet objet = Utiliser un objet d un site distant comme un objet local (importation d une copie de l objet) = Importer dynamiquement une classe (type + méthodes) avec les objets correspondants = Exporter dynamiquement une classe (type + méthodes) avec les objets correspondants Obtenir une référence RMI comprend un serveur de nom (registry) basé sur les URL : = Les méthodes de la classe Naming accèdent au registry Du coté serveur, l application invoque la méthode : = Naming. bind (URL, objet) Du coté client, l application invoque la méthode : = référence = Naming.lookup (URL) L objet reste sur le serveur = Une instance de la souche (stub) est importée sur le client = La référence client désigne cette souche qui référence l objet distant

4 Utiliser un objet distant On peut utiliser localement un objet distant : = De façon transparente = Aussi simplement qu un objet local = résultat = objetlocal.méthode (objetdistant) Invoquer une méthode distante Une méthode distante s invoque de façon transparente : = résultat = objetdistant.méthode (param1,, paramn) Les paramètres d entrée peuvent être : = Des objets locaux transmis par copie et sérialisation = Des objets distants (du serveur ou d un site tiers) dont la référence (objet + stub) est retransmise Au retour : = Les objets locaux modifiés sont recopiés = Des références à de nouveaux objets distants peuvent être obtenues

5 Beaucoup plus qu un simple RPC pour Java 2. Rappels sur les RPC Machine A Client Machine B Serveur Processus uitilisateur Requête Invocation du service (Processus veilleur) Réponse Réseau Exécution du service (Processus serveur) renvoit des valeurs de retour

6 Caractéristiques d un RPC Un APD, appel de procédure à distance (RPC, Remote Procedure Call en anglais) permet : = La transparence Type de machine Type de réseau Localisation Type de codage et standards = Plusieurs sémantiques des appels Synchrone / asynchrone Au-moins-une-fois / au-plus-une-fois Processus serveur Question : qui exécute la procédure distante? Réponse : un processus serveur autonome = Un second processus est utilisé sur le serveur

7 Problèmes Les espaces d adressage des processus client et serveur sont disjoints = Nouvelle pile, nouvelles variables Une procédure appelée à distance forme un bloc opaque pour les règles de visibilité = Toutes les communications se font par passage de paramètre = On ne peut pas passer un pointeur Les machines et / ou les systèmes sont différents = Transformation des formats = Interdiction des calculs explicites d adresse Solutions Solution 1 : les paramètres sont limités aux types de base = Passage de paramètres par valeurs = Sans pointeur, uniquement des tableaux = Les structures et / ou listes doivent être décomposées par le programmeur Plusieurs standards ont été proposés = Le plus utilisé est DXF (Data exchange Format) Solution 2 : sérialisation (languages objets) = Les objets complexes sont transformés en un flot de caractères selon un format d échange

8 Mécanisme d appel compilé = La procédure distante et le programme appelant sont compilés séparément = Le compilateur utilise une définition d interface abstraite = L appelant utilise le mécanisme d appel habituel = Une pseudo procédure se substitue localement à la procédure distante La souche client (stub) = L appelé utilise le mécanisme d appel habituel = Une pseudo procédure appelante se substitue à la vraie sur la machine distante La souche serveur (squeleton) Client Architecture Serveur Procédure appelante Souche client Librairie APD Système et communication Appel de procédure Appel de procédure Appel système Procédure appelée Souche serveur Librairie et runtime APD Système et communication Appel de procédure Appel de procédure Appel système

9 Définition d interface Une procédure distante n est connue que par son interface = type_retour nom_procedure (mode_p1 type_p1, mode_p2 type_p2,, mode_pn type_pn) ; = type_1 = ; = = type_m = ; L interface est générée par le compilateur serveur Elle est utilisée par le compilateur client 3. Le modèle objet de Java-RMI Le modèle objet distribué de RMI distingue deux types d objets : = Les objets distants (remote object) = Les objets locaux Un objet distant est connu des autres sites par une ou plusieurs interfaces distantes (remote interfaces) Chaque interface distante définit un ensemble de méthodes invocables depuis les autres sites Pour invoquer une méthode d un objet distant : = On connait son interface - son comportement = On ne connait pas sa classe exacte - son implémentation

10 Interfaces et classes en Java Une interface définit un comportement abstrait = Elle ne comporte pas de constructeur d objets = Elle définit la signature de méthodes abstraites = Elle peut aussi définir des constantes Une classe définit une implémentation particulière = Elle comporte un constructeur d objets = Elle définit un type pour la structure des objets = Elle spécifie des méthodes (signature + corps) Une classe peut implémenter une ou plusieurs interfaces = Elle doit alors fournir une implémentation des méthodes correspondantes Exemple InterfaceX méthodex1 () méthodex2 () InterfaceY méthodey1 () méthodey2 () InterfaceZ méthodez1 () méthodez2 () IntX IntY IntX IntZ ClasseA méthodex1 () méthodex2 () méthodey1 () méthodey2 () méthodea1 () méthodea2 () ClasseB méthodex1 () méthodex2 () méthodez1 () méthodez2 () méthodeb1 () méthodeb2 ()

11 Interfaces et héritage en Java Un objet Java est créé comme une instance d une classe particulière Java supporte trois mécanismes d héritage = simple : une classe peut étendre une autre classe - sa superclasse - = simple : une interface peut étendre une autre interface - sa superinterface - = multiple : une classe peut implémenter une ou plusieurs interfaces En résultat, un objet Java est aussi : = Une instance de sa ou ses superclasses = Une instance des toutes les interfaces implémentées par sa classe et sa (ou ses) superclasse (s) InterfaceX méthodex1 () Exemple InterfaceY méthodey1 () InterfaceW méthodew1 () IntX IntY ClasseA InterfaceZ méthodez1 () méthodex1 () méthodey1 () méthodea1 () implements extends IntZ ClasseC méthodey2 () méthodew1 () méthodez1 () méthodec1 () méthodec2 ()

12 Exemple (suite) Les instructions suivantes sont toutes correctes : ClasseC c1 = new ClasseC () ; ClasseA a1 = new ClasseC () ; ClasseA a2 = c1 ; ClasseC c2 = (ClasseC) a2 ; InterfaceX ix1 = new ClasseA () ; InterfaceX ix2 = new ClasseC () ; InterfaceZ iz1 = c1 ; InterfaceZ iz2 = (ClasseC) a1 ; L instruction suivante est incorrecte : InterfaceZ iz3 = new ClasseA () ; Interfaces et classes de RMI Interfaces Classes Exceptions Remote Serializable RemoteObject IOException RemoteServer RemoteException UnicastRemoteObject

13 L interface Remote Remote CompteBancaire Remote sert à identifier et référencer les objets distants Remote ne définit aucune méthode public interface Remote {} Remote est la racine de toutes les interfaces distantes définies par les utilisateurs pour manipuler les objets distants public interface CompteBancaire extends Remote { public void depot (float montant) throws RemoteException ; public void retrait (float montant) throws RemoteException ; } Objets distants de Java-RMI Définition : un objet distant est une instance d une classe implémentant une ou plusieurs interfaces distantes. Un objet non-distant est dit objet local. NB : distant et local désignent la nature de l objet et non pas sa localisation sur un certain site. Exemple pour l accès aux objets depuis un site particulier (Site local dans le tableau ci-dessous) selon la nature et la localisation d un objet : Nature des objets Objet local Objet distant Localisation des objets Site local accès local accès local Site distant accès copie locale accès distant

14 La classe UnicastRemoteObject La classe abstraite RemoteObject redéfinit plusieurs méthodes de Object et en ajoute pour les objets distants = hashcode, equals, tostring = getref, tostub, writeobject, readobject La classe abstraite RemoteServer définit des méthodes communes à tous les serveurs = unexportobject, getclienthost, La classe UnicastRemoteObject implémente les objets distants non répliqués (mono-serveur) = exportobject, Conformité avec le modèle Java Une référence à un objet distant peut être : = Passée en paramètre de toute invocation de méthode locale ou distante = Retournée par toute invocation de méthode locale ou distante = Fondue en une référence sur des interfaces distantes de son implémentation = Utilisée en argument de instanceof pour tester les interfaces supportées

15 Spécificité du modèle RMI Les clients des objets distants = Ne voient que les interfaces distantes = Ne voient jamais directement les classes qui les implémentent Les paramètres des méthodes distantes sont passés = Par référence pour les objets distants = par copie pour les autres objets Classes souches de Java-RMI A chaque classe C d objets distants sur le serveur est associée : = Une classe souche CS (stub class) = L ensemble des interfaces I distantes de C Implémentées directement par C Ou implémentées par une superclasse de C Pour un objet distant référencé depuis un site client : = La classe souche est importée par le réseau = Un objet de cette classe est créé localement Le système normal de type de Java fonctionne avec les références sur les objets souches

16 Exemple : hiérarchie de classe Interfaces Serializable Classes RemoteObject Remote RemoteServer RemoteInterfaceX RemoteInterfaceY UnicastRemoteObject RemoteInterfaceZ RemoteInterfaceW ClasseA InterfaceM ClasseB InterfaceN ClasseC Exemple : souches Interfaces Remote Souches RemoteInterfaceX RemoteInterfaceY RemoteInterfaceZ RemoteInterfaceW SoucheA SoucheB

17 Exemple : objets souches Serveur RIX RIW ClasseA SoucheA RIX RIZ RIW IM ClasseB SoucheB Importation des souches Client RIX RIW SoucheA RIX RIZ RIW SoucheB RIX RIZ RIW IM IN ClasseC Création d objets substituts Obj_CAi Obj_CBj Obj_CCk Obj_SAi Obj_SBj Obj_SCk références distantes 4. Architecture générale RMI se décompose en trois couches : Client Serveur Application Souches client (Stubs) Souches Serveur (Skeletons) Couche des références distantes (Remote Reference Layer) Mécanisme RMI Couche Transport

18 La couche des souches La couche des souches : = Constitue l interface application / système RMI. = Comporte les souches client (stubs) agissant comme un objet par procuration (proxy) = Comporte les souches serveur implémentant toutes les interfaces de l objet distant. = Soumet les données à la couche des références distantes sous forme de flots de données entrants et sortants - après sérialisation. Sérialisation Sérialisation Définition : technique permettant la transmission des données objets entre deux espaces d adressage différents Les références à d autres objets conduisent à une copie en profondeur Entrée : = Un ensemble d objets en mémoire (virtuelle) = Organisé en graphe (connexe ou non) Sortie : = Un flot séquentiel de données = Utilisant exclusivement un adressage relatif Désérialisation

19 Les souches client (stubs) La souche client : = Initialise l appel vers un objet distant (via la couche des références distantes ) = Sérialise les arguments sous forme d un unique flot de sortie = Informe la couche des références distantes que l appel peut être invoqué = Désérialise le flot d entrée contenant la valeur de retour ou une exception = Informe la couche des références distantes que l appel est achevé Les souches serveur (squeletons) La souche serveur : = Reçoit l appel par une méthode unique (aiguilleur) = Désérialise le flot d entrée des arguments = Prépare l appel vers l implémentation réelle de l objet distant = Distribue l appel vers la bonne méthode cible = Sérialise les valeurs de retour ou les exceptions dans le flot de sortie

20 La couche des références distantes Plusieurs protocoles d invocation possibles : = Invocation point à point (Unicast) = Invocation vers des groupes de réplication (Multicast) Stratégie de reconnexion (si un objet devient inaccessible) Deux composantes coopérantes : = la composante coté client (client-side) = la composante coté server (server-side) Transmission de données entre couches transport par une connexion orientée flux La couche transport La couche transport de Java-RMI effectue : = Mise en place, gestion, surveillance de la connexion = Ecoute des appels arrivant = Maintien d une table d objets distants pour l espace d adressage = Localisation du dispatcher pour la cible d un appel distant et transmission de la connexion

21 Concepts de la couche transport 4 abstractions : = Un endpoint indique machine virtuelle Java. = Un channel conduit entre = Une connexion permet le transfert des données. = Le transport effectue la gestion des channels. Nettoyage des objets distants Ramasse-miette Ramasse-miette (Garbage Collector) distribué Invoqué quand : = Les objets distants ne sont plus appelés (compteur ref_counting == 0) = Il n y a plus ni référence locale ni référence distante sur les objets locaux ou distants Remarque : = Le GC ne garantit pas l intégrité des références, il peut rester une référence sans objet correspondant ( fi RemoteException)

22 Chargement dynamique des classes Pendant l exécution : Chargement dynamique des classes nécessaires à l invocation des méthodes de l objet distant. = Classes stub et squelette (~proxies) = Classes indirectement utilisées par RMI Chargement dynamique des classes pour les copies des objets locaux hors-site = Classes et interfaces des objets hors-site Différents chargeurs de classe = LocalClassLoader (selon le Classpath) Chargement des classes connues localement = AppletClassLoader Chargement de l applet Chargement des classes dépendantes sur le réseau = RMIClassLoader Vérifie que l on ne peut pas charger avec le Classpath. Localise la classe grâce à l URL dans le flot (objet distant). Localise la classe grâce à l URL spécifié par java.rmi.server.codebase local (souche/squelette).

23 Sécurité Chargement local de classe : = Pas de problème de sécurité Chargement à partir du réseau : = Nécessité d un Security Manager. Applet Security Manager (à lancer en 1er dans une application). RMI Security Manager (par défaut). Sécurité Applet Security : = Le chargement doit être fait sur applet (travail des développeurs). RMI Security : = Lorsque non local (ex : bootstrapping). = Toutes les classes téléchargées par le RMIClassLoader. = Pb : on ne peut pas prévenir le chargement de classes abusant de ressource.

24 Scénarios Serveurs en mode ouvert ou fermé. Application Java utilisant RMI : Mode Client / Serveur Mode Serveur / Client (callback) Mode égal à égal (peer to peer) Mode ouvert ou fermé Serveur fermé : = Pas de chargement de classe = Interfaces locales au serveur = Pas de Security Manager Serveur ouvert : = Chargement de classes avec l URL du java.rmi.server.codebase = Contrôle par le RMI Security Manager

25 Applets Classes fournies par serveur HTTP ou FTP (URL page HTML) Pas de chargement de classes si elles existent déjà sur le serveur. Application Java distribuée NB : Applet Un seul serveur HTTP pour toutes les applications distribuées sur le réseau Chargement local d une application : = Chargement des interfaces distantes = Chargement des classes souche et squelette. Chargement réseau (bootstrapping) : = Toutes les classes peuvent être chargées à partir de la même source réseau

26 RMI à travers les Firewalls Problème : = Ouvrir un socket en présence de parefeux (Firewalls) sur Intranet Solution : = Encapsulation d un appel RMI par le protocole HTTP Appel RMI envoyé dans le corps d une requête HTTP POST. Retour dans une requête HTTP response. L usine à sockets Le factory de sockets : = java.rmi.server.rmisocketfactory = Fournisseur de ressource pour les sockets = Création de socket permettant le tunneling Socket client : connexion HTTP vers les hôtes Socket serveur : si HTTP POST alors réponse HTTP

27 Configuration Configuration du client : RAS Configuration du serveur : = La totalité du nom de l hôte serveur doit être incluse dans les références distantes = Si le serveur ne supporte pas les clients RMI en dehors du parefeux : Utilisation d un serveur HTTP à l écoute sur le port 80. Utilisation d un script CGI : /cgi-bin/java-rmi Multithreading NAME ADDRESS Client NAME ADDRESS Client NAME ADDRESS RMI RMI Server RMI Client JDBC Expense records

28 Comparaison RMI / RPC Orientation Objet = Passage d objets complexes en paramètre. = Création d objets à distance. Séparation interface / implémentation Client Server Architecture d objets distribués Répartition des objets sur une architecture C/S ou 3 tiers de façon libre. Utilisation d un Security Manager standard ou spécialisé. Portable sur toute machine (VM). Ramasse-miette distribué. Multithreaded.

29 Intégration intranet / extranet Appel à distance / téléchargement de code Encapsulation code non-java avec JNI Encapsulation BD avec JDBC Récupère les avantages d un BUS Java : = Puissance = Sécurité = Portabilité Implémentation des souches L implémentation des souches s appuie sur les possibilités objets de Java

30 Classes et Interfaces des souches Classe RemoteStub = Superclasse pour tous les stubs Interface RemoteCall = Gestion du transport des informations (flux) Interface RemoteRef = Attache locale à un objet distant Interface Skeleton = Répartiteur d appels JINI Architecture destinée à la gestion de périphériques en réseau = Utilise RMI = Télécharge des données et du code pour piloter le périphérique = Constitue une première application de Service Web

31 Fonctionnnement de JINI Lors de l ajout d un périphérique: Celui-ci se déclare auprès du serveur Lookup Service puis lui envoie son pilote Le client voulant utiliser le pilote envoie une demande au serveur Le serveur lui envoie le pilote du périphérique

RMI (Remote Method Invocation) Client serveur, situation traditionnelle. Client serveur, situation traditionnelle.

RMI (Remote Method Invocation) Client serveur, situation traditionnelle. Client serveur, situation traditionnelle. RMI (Remote Method Invocation) Présentation de RMI Université Française d Egypte Richard Grin Version 0.6 10/10/12 R. Grin RMI page 2 Client serveur, situation traditionnelle Sur la machine A un client

Plus en détail

Java RMI. Programmation des applications réparties. Olivier Flauzac URCA. Master EEAMI-Informatique première année

Java RMI. Programmation des applications réparties. Olivier Flauzac URCA. Master EEAMI-Informatique première année Java RMI Programmation des applications réparties Olivier Flauzac URCA Master EEAMI-Informatique première année Olivier Flauzac (URCA) PAR : Java RMI MSTIC-INFO 1 1 / 30 1 RMI 2 Architecture 3 Développement

Plus en détail

Sensibilisation à RMI (Remote Method Invocation)

Sensibilisation à RMI (Remote Method Invocation) Jini Sensibilisation à RMI (Remote Method Invocation) Le rêve de tout système distribué L idéal serait d avoir un système distribué utilisant la technologie objet et permettant : 1) d invoquer une méthode

Plus en détail

Systèmes Distribués Des protocoles client serveur au paradigme objets distribués avec Java

Systèmes Distribués Des protocoles client serveur au paradigme objets distribués avec Java Systèmes Distribués Des protocoles client serveur au paradigme objets distribués avec Java (application avec Java RMI) Éric Leclercq Département IEM / Laboratoire LE2i Décembre 2010 émail : Eric.Leclercq@u-bourgogne.fr

Plus en détail

SOA et Services Web. 23 octobre 2011. Evolution des Systèmes d Information

SOA et Services Web. 23 octobre 2011. Evolution des Systèmes d Information SOA et Services Web 23 octobre 2011 1 Evolution des Systèmes d Information 2 Qu est ce qu une application répartie? Il s agit d une application découpée en plusieurs unités Chaque unité peut être placée

Plus en détail

Java Remote Method Invocation

Java Remote Method Invocation Java Remote Method Invocation Ce support est très largement inspiré du livre et du cours de S. Krakowiak S. Krakowiak Java Remote Method Invocation 1 / 25 Intérêt des objets pour la construction d applications

Plus en détail

objectif : plan : Java, CORBA et RMI A. Le Grand,1997 1 JAVA, CORBA et RMI

objectif : plan : Java, CORBA et RMI A. Le Grand,1997 1 JAVA, CORBA et RMI JAVA, CORBA et RMI objectif : développer des applications client/serveur incluant des objets répartis Java / CORBA : client/serveur hétérogènes Java / RMI : client/serveur homogènes plan : l architecture

Plus en détail

Cours client-serveur Web : Java et RMI (Remote Method Invocation)

Cours client-serveur Web : Java et RMI (Remote Method Invocation) Cours client-serveur Web : Java et RMI (Remote Method Invocation) 1 Java: Rappel sur les threads Cycle de vie d un thread (1) Né -> prêt appel de la méthode start du thread Prêt Exécution Distribution

Plus en détail

Programmation par RPC et Java-RMI :

Programmation par RPC et Java-RMI : 2A-SI 3 Prog. réseau et systèmes distribués 3.2 et JavaRMI Stéphane Vialle Stephane.Vialle@supelec.fr http://www.metz.supelec.fr/~vialle Support de cours élaboré avec l aide de l équipe pédagogique du

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

La plate-forme Java RMI

La plate-forme Java RMI La plate-forme Java RMI Frank Singhoff Bureau C-202 Université de Brest, France Lab-STICC/UMR 3192 singhoff@univ-brest.fr UE systèmes à objets répartis, Université de Brest Page 1/25 Sommaire 1. Le modèle

Plus en détail

Remote Method Invocation (RMI)

Remote Method Invocation (RMI) Remote Method Invocation (RMI) TP Réseau Université Paul Sabatier Master Informatique 1 ère Année Année 2006/2007 Plan Objectifs et Inconvénients de RMI Fonctionnement Définitions Architecture et principe

Plus en détail

Systèmes distribués. Les Sockets

Systèmes distribués. Les Sockets Systèmes distribués Plusieurs technologies existent : Les sockets Les remote procedure call (RPC) Remote Method Invocation (RMI) Les Sockets L'utilisation des Sockets nécessite De gérer le codage et le

Plus en détail

JVM. RMI - couche de référence. RMI - couche de transport TCP/IP

JVM. RMI - couche de référence. RMI - couche de transport TCP/IP Chapitre 9 Dans ce chapitre nous abordons le mécanisme RMI (Remote Method Invocation) permettant le développe ment des systèmes répartis. Nous expliquerons comment les classes d un serveur peuvent être

Plus en détail

Implementing a simple RMI Application over the. Internet. (using. and

Implementing a simple RMI Application over the. Internet. (using. and Implementing a simple RMI Application over the (using and Internet and comparing HTTP tunneling,, RMI Proxy) Plan de l exposé Introduction Problématique HTTP tunneling Comment RMI «tunnelle» des messages

Plus en détail

Modèle client-serveur

Modèle client-serveur Modèle client-serveur Daniel Hagimont IRIT/ENSEEIHT 2 rue Charles Camichel - BP 7122 31071 TOULOUSE CEDEX 7 Daniel.Hagimont@enseeiht.fr http://hagimont.perso.enseeiht.fr 1 Plan Principes généraux Modèle

Plus en détail

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 7 : RMI

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 7 : RMI iut ORSAY DUT Informatique Département Informatique 2008 / 2009 Travaux Pratiques n o 7 : RMI Nom(s) : Groupe : Date : Objectifs : savoir créer des applications client-serveur mettant en jeu des machines

Plus en détail

RMI. Remote Method Invocation: permet d'invoquer des méthodes d'objets distants.

RMI. Remote Method Invocation: permet d'invoquer des méthodes d'objets distants. RMI Remote Method Invocation: permet d'invoquer des méthodes d'objets distants. Méthode proche de RPC. Outils et classes qui rendent l'implantation d'appels de méthodes d'objets distants aussi simples

Plus en détail

Modèle client-serveur

Modèle client-serveur Modèle client-serveur Daniel Hagimont IRIT/ENSEEIHT 2 rue Charles Camichel - BP 7122 31071 TOULOUSE CEDEX 7 Daniel.Hagimont@enseeiht.fr http://hagimont.perso.enseeiht.fr Remerciements Michel Riveill 1

Plus en détail

TP Java RMI. Alexandre Denis Alexandre.Denis@inria.fr. Inria Bordeaux Sud-Ouest France ENSEIRB PG306

TP Java RMI. Alexandre Denis Alexandre.Denis@inria.fr. Inria Bordeaux Sud-Ouest France ENSEIRB PG306 TP Java RMI Alexandre Denis Alexandre.Denis@inria.fr Inria Bordeaux Sud-Ouest France ENSEIRB PG306 Paradigme RMI RMI (Remote Method Invocation) RPC orientés objet (encapsulation, héritage,...) objet :

Plus en détail

Java - RMI Remote Method Invocation. Stéphane Frénot -MID - V.0.2.0 Part I - RMI 1

Java - RMI Remote Method Invocation. Stéphane Frénot -MID - V.0.2.0 Part I - RMI 1 Java - RMI Remote Method Invocation Stéphane Frénot -MID - V.0.2.0 Part I - RMI 1 Répartition d'une application Application de Présentation Middleware Implicite Application de traitement Application de

Plus en détail

Java - RMI Remote Method Invocation

Java - RMI Remote Method Invocation Java - RMI Remote Method Invocation Stéphane Frénot -MID - V.0.2.0 Part I - RMI 1 Répartition d'une application Application de Présentation Système d'exploitation Middleware Implicite Application de traitement

Plus en détail

Plan. Environnement Client/Serveur. Cours 6 Rappels Java (suite) Appel de méthode à distance. Utilité. static

Plan. Environnement Client/Serveur. Cours 6 Rappels Java (suite) Appel de méthode à distance. Utilité. static Plan Environnement Client/Serveur Cours 6 Rappels Java (suite) Appel de méthode à distance kn@lri.fr http://www.lri.fr/~kn 1 Rappels sur les systèmes d'exploitations / Communication par mémoire partagée

Plus en détail

Programmation orientée objet en langage JAVA

Programmation orientée objet en langage JAVA Programmation orientée objet en langage JAVA Java RMI : Techniques et utilisations avancées de RMI Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon - BP 540 76058 LE

Plus en détail

Le réseau est l ordinateur

Le réseau est l ordinateur Le réseau est l ordinateur (Bill Joy) Les applets 1 Les applets : principe Les applets sont des programme Java téléchargés à partir d un serveur WEB et qui s exécutent dans le browser d un client : Fichier.html

Plus en détail

Remote Method Invocation en Java (RMI)

Remote Method Invocation en Java (RMI) Remote Method Invocation en Java (RMI) Modélisation et construction des applications réparties (Module M-4102C) J. Christian Attiogbé Fevrier 2015 J. Christian Attiogbé (Fevrier 2015) Remote Method Invocation

Plus en détail

NFP111 Systèmes et Applications Réparties

NFP111 Systèmes et Applications Réparties NFP111 Systèmes et Applications Réparties 1 de 46 NFP111 Systèmes et Applications Réparties Cours 2 - Les appels de procédure distants (Partie 1) Claude Duvallet Université du Havre UFR Sciences et Techniques

Plus en détail

RMI : Remote Method Invocation Appel de méthodes à distance

RMI : Remote Method Invocation Appel de méthodes à distance RMI : Remote Method Invocation Appel de méthodes à distance Patrice Torguet torguet@irit.fr Université Paul Sabatier Plan du cours l Les RPC l Architecture et fonctionnement de RMI l Etapes de développement

Plus en détail

PROGRAMMATION DISTRIBUÉE TUTORIEL RMI

PROGRAMMATION DISTRIBUÉE TUTORIEL RMI PROGRAMMATION DISTRIBUÉE TUTORIEL RMI PUBLIC CONCERNÉ : formation initiale, 2 e année. NOM DE L AUTEUR : V. Thomas DATE 2012/2013 UNIVERSITÉ DE LORRAINE IUT NANCY CHARLEMAGNE 2 ter boulevard Charlemagne

Plus en détail

Exécution des applications réparties

Exécution des applications réparties Exécution des applications réparties Programmation des Applications Réparties Olivier Flauzac URCA Master STIC-Informatique première année Olivier Flauzac (URCA) PAR : Exécution des applications réparties

Plus en détail

Programmation Réseau RMI. Jean-Baptiste.Yunes@univ-paris-diderot.fr armand@informatique.univ-paris-diderot.fr. ! UFR Informatique

Programmation Réseau RMI. Jean-Baptiste.Yunes@univ-paris-diderot.fr armand@informatique.univ-paris-diderot.fr. ! UFR Informatique Programmation Réseau RMI Jean-Baptiste.Yunes@univ-paris-diderot.fr armand@informatique.univ-paris-diderot.fr UFR Informatique 2014 Les RMI de Java Les applications RMI sont des applications bâties sur

Plus en détail

NFP111 Systèmes et Applications Réparties

NFP111 Systèmes et Applications Réparties NFP111 Systèmes et Applications Réparties 1 de 38 NFP111 Systèmes et Applications Réparties Cours 11 - Les Enterprise Java Beans (Introduction aux Enterprise Claude Duvallet Université du Havre UFR Sciences

Plus en détail

1. QCM (40 points) (1h)

1. QCM (40 points) (1h) Examen 1ère session 2012-2013 page 1 NSY 102 - AISL IPST-CNAM Intranet et Designs patterns NSY 102 Vendredi 26 Avril 2013 Durée : 3 heures Enseignants : LAFORGUE Jacques 1. QCM (40 points) (1h) Mode d'emploi

Plus en détail

Objets distribués et Appel de Méthodes à Distance 2009-2010

Objets distribués et Appel de Méthodes à Distance 2009-2010 Objets distribués et Appel de Méthodes à Distance 2009-2010 1 Objectif : construire une application où différents modules peuvent être situés sur des machines différentes, en utilisant un modèle à objets

Plus en détail

Systèmes répartis : Remote Method Invocation p.1/74

Systèmes répartis : Remote Method Invocation p.1/74 Systèmes répartis : Remote Method Invocation Fabrice Rossi http://apiacoa.org/contact.html. Université Paris-IX Dauphine Systèmes répartis : Remote Method Invocation p.1/74 Plan 1. Introduction 2. JRMP

Plus en détail

Plan. Les objets répartis. Sources. Cours. Introduction. Pierre Courtieu. Remote method invocation (JAVA/RMI)

Plan. Les objets répartis. Sources. Cours. Introduction. Pierre Courtieu. Remote method invocation (JAVA/RMI) Les objets répartis Pierre Courtieu Plan Introduction Les applications distribuées Introduction Les applications distribuées Remote method invocation (JAVA/RMI) Exemple 1: Compte en banque Exemple complet:

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

Remote Method Invocation (RMI)

Remote Method Invocation (RMI) Remote Method Invocation (RMI) Pierre Gançarski Mars 2010 1 Présentation L'objectif est de permettre à des applications clientes (s'exécutant localement) d'invoquer des méthodes sur des objets distants,

Plus en détail

Introduction aux systèmes répartis

Introduction aux systèmes répartis Introduction aux systèmes répartis Grappes de stations Applications réparties à grande échelle Systèmes multicalculateurs (1) Recherche de puissance par assemblage de calculateurs standard Liaison par

Plus en détail

Introduction à JAVA RMI

Introduction à JAVA RMI Introduction à JAVA RMI Plan Introduction Architecture logique Principe de programmation Un exemple Fabrique d'objets Appels en retour 2 Bibliographie Documentation Sun : http://java.sun.com/javase/technologies/core/basic/rmi/

Plus en détail

RPC Remote Procedure Call. Benmoussa Yahia Université M hamed Bougara de Boumerdès yahia.benm@gmail.com

RPC Remote Procedure Call. Benmoussa Yahia Université M hamed Bougara de Boumerdès yahia.benm@gmail.com RPC Remote Procedure Call Benmoussa Yahia Université M hamed Bougara de Boumerdès yahia.benm@gmail.com Objectifs Le rôle de RPC comme middleware Positionner RPC dans le modèle OSI Développement d application

Plus en détail

Programmation servlet

Programmation servlet Programmation servlet Olivier Aubert 1/23 Références http://developer.java.sun.com/developer/onlinetraining/servlets/fundamenta http://www.servlets.com http://java.sun.com/products/jsp/index.html http://www.servletcentral.com/

Plus en détail

Etude de cas PLM. Patrice TORGUET IRIT Université Paul Sabatier

Etude de cas PLM. Patrice TORGUET IRIT Université Paul Sabatier Etude de cas PLM Patrice TORGUET IRIT Université Paul Sabatier Plan Exemple PLM Répartition avec Sockets Répartition avec RMI Répartition avec CORBA Répartition avec JMS Répartition avec Java EE Améliorations

Plus en détail

Technologies du Multimédia et du Web

Technologies du Multimédia et du Web 3 ème Année Licence appliquée Technologies du Multimédia et du Web MoezBEN HAJ HMIDA ISSAT Sousse 2009/2010 Plan Les systèmes e-services Évolution des architectures d applications Les architectures client/serveur

Plus en détail

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique Institut Supérieure Aux Etudes Technologiques De Nabeul Département Informatique Support de Programmation Java Préparé par Mlle Imene Sghaier 2006-2007 Chapitre 1 Introduction au langage de programmation

Plus en détail

Figure 1. Structure répartie

Figure 1. Structure répartie Chapitre I: Applications Réparties et Middleware 1. Définition d une application répartie Une application répartie est constituée d un ensemble de processus (d objets, d agents, d acteurs) s exécutant

Plus en détail

Remote Method Invocation Invocation de méthodes distantes (RMI)

Remote Method Invocation Invocation de méthodes distantes (RMI) Remote Method Invocation Invocation de méthodes distantes (RMI) Stéphane NICOLAS Hiver 2002 Résumé Ce document est destiné à donner au lecteur une connaissance à la fois pratique et théorique du modèle

Plus en détail

DÉPARTEMENT DE GÉNIE ÉLECTRIQUE DESCRIPTION DE JAVA RMI ET. Document préparé par Mario Couture ET DE GÉNIE INFORMATIQUE COMPARAISON AVEC CORBA ET DCOM

DÉPARTEMENT DE GÉNIE ÉLECTRIQUE DESCRIPTION DE JAVA RMI ET. Document préparé par Mario Couture ET DE GÉNIE INFORMATIQUE COMPARAISON AVEC CORBA ET DCOM DÉPARTEMENT DE GÉNIE ÉLECTRIQUE ET DE GÉNIE INFORMATIQUE DESCRIPTION DE JAVA RMI ET COMPARAISON AVEC CORBA ET DCOM Document préparé par Mario Couture Août 2000 Table des matières Table des matières...ii

Plus en détail

Les Systèmes et Applications Réparties et leur Programmation

Les Systèmes et Applications Réparties et leur Programmation Les Systèmes et Applications Réparties et leur Programmation Samia Bouzefrane Maître de Conférences Laboratoire CEDRIC Conservatoire National des Arts et Métiers 292 rue Saint Martin 75141 Paris Cédex

Plus en détail

Les architectures N-tiers

Les architectures N-tiers Les architectures N-tiers 1 SOMMAIRE DU COURS XML ET LES ARCHITECTURES N-TIER Introduction aux architectures N-tier Serveurs d applications Déploiement d applications J2EE Tiers applicatif : servlets Tiers

Plus en détail

Architectures web pour la gestion de données

Architectures web pour la gestion de données Architectures web pour la gestion de données Dan VODISLAV Université de Cergy-Pontoise Plan Le Web Intégration de données Architectures distribuées Page 2 Le Web Internet = réseau physique d'ordinateurs

Plus en détail

Introduction aux systèmes à objets et services répartis

Introduction aux systèmes à objets et services répartis Introduction aux systèmes à objets et services répartis Frank Singhoff Bureau C-202 Université de Brest, France Lab-STICC UMR 3192 singhoff@univ-brest.fr UE systèmes à objets et services répartis, Université

Plus en détail

RMI : Remote Method Invocation Appel de méthodes à distance TD/TP

RMI : Remote Method Invocation Appel de méthodes à distance TD/TP RMI : Remote Method Invocation Appel de méthodes à distance TD/TP Patrice Torguet torguet@irit.fr Université Paul Sabatier But l But du TD/TP : application répartie permettant de gérer des comptes bancaires.

Plus en détail

1.1 Remote Procedure Call (RPC)

1.1 Remote Procedure Call (RPC) 1.1 Remote Procedure Call (RPC) Le modèle Client-Serveur est un modèle simple à utiliser pour la structuration des systèmes répartis. Mais ce modèle s appuie sur des communications de type entrée/sortie

Plus en détail

RICM 4 ème année 12/1/2012

RICM 4 ème année 12/1/2012 RICM 4 ème année 12/1/2012 Examen de Systèmes Répartis Durée : 2h, Documents autorisés à l exception des livres. Le barème est indicatif. Partie A Applications Web Question 1. Dans un répertoire contenant

Plus en détail

Programmation répartie RPC & RMI

Programmation répartie RPC & RMI Programmation répartie RPC & RMI Plan du cours Introduction Définitions Problématiques Architectures de distribution Distribution intra-applications Notion de processus Programmation multi-thread Distribution

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

Calcul Parallèle. Cours 5 - JAVA RMI

Calcul Parallèle. Cours 5 - JAVA RMI Calcul Parallèle Cours 5 - JAVA RMI Eric Goubault Commissariat à l Energie Atomique & Chaire Ecole Polytechnique/Thalès Saclay Le 28 février 2012 Eric Goubault 1 28 février 2012 Remote Method Invocation

Plus en détail

Chapitre 5 CORBA (Common Object Request Broker Architecture)

Chapitre 5 CORBA (Common Object Request Broker Architecture) DÉVELOPPEMENT D APPLICATIONS RÉPARTIES CORBA (Common Object Request Broker Architecture) Amen Ben Hadj Ali amenbha@hotmail.com ISI-L3SIL 2011-2012 Plan 2 Architecture CORBA Le langage IDL CORBA en Java

Plus en détail

CORBA avec OpenORB. Samir Torki et Patrice Torguet

CORBA avec OpenORB. Samir Torki et Patrice Torguet CORBA avec OpenORB Samir Torki et Patrice Torguet 1 Présentation de CORBA CORBA (Common Object Request Broker Architecture) est un standard décrivant une architecture pour la mise en place d objets distribués.

Plus en détail

Java Remote Method Invocation

Java Remote Method Invocation Java Remote Method Invocation SI4 AppRéparties PII F. Baude, d après cours F. Huet 2011-12 1 Java-RMI RMI signifie Remote Method Invocation Introduit dès JDK 1.1 Partie intégrante du cœur de Java (API

Plus en détail

Conception de serveurs d'applications ouverts

Conception de serveurs d'applications ouverts Conception de serveurs d'applications ouverts Stéphane Frénot 3 Un modèle d'exécution standard Application Stéphane Frénot 4 1 Répartition "horizontale" d'une application Application de Présentation Application

Plus en détail

Java Avancé - Cours 2

Java Avancé - Cours 2 Java avancé - cours 2 1/8 Java Avancé - Cours 2 Plan 1 Communication entre objets 1 1.1 Motivation....................................................... 1 1.2 Relations entre le panier et le rayon.........................................

Plus en détail

Partie 2.2: Servlet et Tomcat

Partie 2.2: Servlet et Tomcat Partie 2.2: Servlet et Tomcat 1 Plan du cours Servlets Présentation Exemple 2 Plan du cours Tomcat Des servlets à Tomcat: pourquoi Tomcat? Architecture Tomcat Installation et configuration de Tomcat Configuration

Plus en détail

Conception d Applications Réparties

Conception d Applications Réparties Jean-François Roos LIFL - équipe GOAL- bâtiment M3 Extension - bureau 206 -Jean-Francois.Roos@lifl.fr 1 Objectifs du Cours Appréhender la conception d applications réparties motivations et concepts architectures

Plus en détail

Rapport du projet de Chat distribué avec Java RMI

Rapport du projet de Chat distribué avec Java RMI Rapport du projet de Chat distribué avec Java RMI 1. LE SUJET...2 2. VERSION 1...4 A. PRESENTATION ET PRINCIPE... 4 B. CARACTERISTIQUES CLIENT / SERVEUR... 6 3. VERSION 2...8 A. PRESENTATION ET PRINCIPE...

Plus en détail

ETUDE COMPARATIVE DES SERVICES DE RECHERCHE SUR PROPRIETES

ETUDE COMPARATIVE DES SERVICES DE RECHERCHE SUR PROPRIETES ETUDE COMPARATIVE DES SERVICES DE RECHERCHE SUR PROPRIETES Dhouha Ayed, Chantal Taconet et Guy Bernard GET / INT, CNRS Samovar 9 rue Charles Fourier, 91011 Évry, France {Dhouha.Ayed, Chantal.Taconet, Guy.Bernard}@int-evry.fr

Plus en détail

Architectures n tiers Intergiciels à objets et services web

Architectures n tiers Intergiciels à objets et services web UMIN406 : thèmes abordés Architectures n tiers Intergiciels à objets et services web Clémentine Nebut LIRMM / Université de Montpellier 2 LIRMM Clementine.nebut@lirmm.fr 1 Distribution d objets Java RMI,.net

Plus en détail

GEI 465 : Systèmes répartis

GEI 465 : Systèmes répartis Université de Sherbrooke GEI 465 : Systèmes répartis Travaux à effectuer Ahmed Khoumsi Automne 2004 Page 1 Les deux premiers travaux que vous effectuerez vous donneront, respectivement, l occasion d utiliser

Plus en détail

Bases de données et environnements distribués Chapitre I : Objets distribués, concepts fondamentaux

Bases de données et environnements distribués Chapitre I : Objets distribués, concepts fondamentaux Bases de données et environnements distribués Chapitre I : Objets distribués, concepts fondamentaux Eric Leclercq Département IEM / UB 10/2005 email : Eric.Leclercq@u-bourgogne.fr http://ludique.u-bourgogne.fr/~leclercq

Plus en détail

par Philippe Poulard Web services 0 Philippe.Poulard@sophia.inria.fr Philippe Poulard

par Philippe Poulard Web services 0 Philippe.Poulard@sophia.inria.fr Philippe Poulard 0 Philippe.Poulard@sophia.inria.fr Philippe Poulard Sommaire Qu est-ce? Middleware XML Web Services in situ Couches de services Architecture des Web Services avec Java JAX-RPC JAXR JAXM Outils 1 Présentation

Plus en détail

TD 7 - Remote Procedure Call (RPC)

TD 7 - Remote Procedure Call (RPC) Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon - BP 540 76058 LE HAVRE CEDEX Claude.Duvallet@gmail.com Année scolaire 2008-2009 Claude Duvallet 1/25 Plan de la présentation

Plus en détail

CHAPITRE 1. Introduction aux web services. 1.1 Définition. Contenu du chapitre : Env. De dev. Langage Visual Studio Java EE Qt Creator C#

CHAPITRE 1. Introduction aux web services. 1.1 Définition. Contenu du chapitre : Env. De dev. Langage Visual Studio Java EE Qt Creator C# CHAPITRE 1 Introduction aux web services Contenu du chapitre : Env. De dev. Langage Visual Studio Java EE Qt Creator C# NetBeans JavaScript Eclipse Objective C Xcode PHP HTML Objectifs du chapitre : Ce

Plus en détail

Systèmes d exploitation II Chapitre 2 : Gestion des processus. www.achrafothman.net

Systèmes d exploitation II Chapitre 2 : Gestion des processus. www.achrafothman.net Systèmes d exploitation II Chapitre 2 : Gestion des processus www.achrafothman.net 1 Processus Concept de Processus Ordonnancement de Processus Opérations sur les Processus Processus Coopératifs Communication

Plus en détail

Patrons de Conception (Design Patterns)

Patrons de Conception (Design Patterns) Patrons de Conception (Design Patterns) Introduction 1 Motivation Il est difficile de développer des logiciels efficaces, robustes, extensibles et réutilisables Il est essentiel de comprendre les techniques

Plus en détail

Introduction. Licence MASS L3 Inf f3

Introduction. Licence MASS L3 Inf f3 Le modèle client serveur Introduction Licence MASS L3 Inf f3 Encapsulation : rappel Données Données Application En-tête En-tête Transport UDP Données TCP Données Paquet UDP Segment TCP En-tête IP Données

Plus en détail

Les formations. Développeur Logiciel. ENI Ecole Informatique

Les formations. Développeur Logiciel. ENI Ecole Informatique page 1/5 Titre professionnel : Reconnu par l Etat de niveau III (Bac), inscrit au RNCP (arrêté du 12/10/07, J.O. n 246 du 23/10/07) (32 semaines) Unité 1 : Structurer une application 6 semaines Module

Plus en détail

Remote Method Invocation Les classes implémentant Serializable

Remote Method Invocation Les classes implémentant Serializable Parallélisme Architecture Eric Goubault Commissariat à l Energie Atomique Saclay Classe qui implémente la méthode distante (serveur): - dont les méthodes renvoient un objet serializable - ou plus généralement

Plus en détail

Module Client Serveur Web 2006 Cours, TD et TP sur PHP et Tomcat

Module Client Serveur Web 2006 Cours, TD et TP sur PHP et Tomcat Prénom : Module Client Serveur Web 2006 Cours, TD et TP sur PHP et Tomcat Nom : Merci de répondre aux questions fermées directement sur la présente feuille et aux questions ouvertes sur une feuille indépendante

Plus en détail

TP 5 : Application distribuée. Pascal GRAFFION 2013/11/14 15:23

TP 5 : Application distribuée. Pascal GRAFFION 2013/11/14 15:23 TP 5 : Application distribuée Pascal GRAFFION 2013/11/14 15:23 Table des matières TP 5 : Application distribuée... 3 Hello PetStore!... 3 Outils... 4 Expression des besoins... 5 Analyse et conception...

Plus en détail

Sécurisation d environnements CORBA : Le cas des coupes-feux pour les accès Internet

Sécurisation d environnements CORBA : Le cas des coupes-feux pour les accès Internet Sécurisation d environnements CORBA : Le cas des coupes-feux pour les accès Internet Bruno TRAVERSON EDF Division R&D Cet exposé est basé sur une expérimentation menée à la division R&D d EDF, l expérimentation

Plus en détail

CORBA. (Common Request Broker Architecture)

CORBA. (Common Request Broker Architecture) CORBA (Common Request Broker Architecture) Projet MIAGe Toulouse Groupe 2 1 CORBA, introduction (1/4) Les systèmes répartis permettent de créer des applications basées sur des composants auto-gérables,

Plus en détail

La technologie Java Card TM

La technologie Java Card TM Présentation interne au CESTI La technologie Java Card TM sauveron@labri.u-bordeaux.fr http://dept-info.labri.u-bordeaux.fr/~sauveron 8 novembre 2002 Plan Qu est ce que Java Card? Historique Les avantages

Plus en détail

La programmation réseau. Java

La programmation réseau. Java Chapitre 7 : Java et les réseaux La programmation réseau Java Rémy Courdier 1996-2003 - Java Réseau - Version du cours 3.0 1 Sommaire La programmation réseau La classe URL Les Sockets TCP/IP et les principaux

Plus en détail

Architectures et Web

Architectures et Web Architectures et Web Niveaux d'abstraction d'une application En règle générale, une application est découpée en 3 niveaux d'abstraction : La couche présentation ou IHM (Interface Homme/Machine) gère les

Plus en détail

Architectures à composants

Architectures à composants Interaction requête/réponse Architectures à composants!communication par requête/réponse client requête réponse serveur Gaël Thomas gael.thomas@lip6.fr Université Pierre et Marie Curie Master Informatique

Plus en détail

PRESENTATION DE JAVA. Qu est-ce que java? Les caractéristiques du langage java Les outils Les API Références. Software Associates International

PRESENTATION DE JAVA. Qu est-ce que java? Les caractéristiques du langage java Les outils Les API Références. Software Associates International PRESENTATION DE JAVA Qu est-ce que java? Les caractéristiques du langage java Les outils Les API Références 1 Qu est-ce que java? Un langage de programmation orienté objets Une architecture de Virtual

Plus en détail

Cours CCNA 1. Exercices

Cours CCNA 1. Exercices Cours CCNA 1 TD3 Exercices Exercice 1 Enumérez les sept étapes du processus consistant à convertir les communications de l utilisateur en données. 1. L utilisateur entre les données via une interface matérielle.

Plus en détail

2 Chapitre 1 Introduction

2 Chapitre 1 Introduction 1 Introduction Ce livre présente les Enterprise JavaBeans 2.0 et 1.1 qui constituent la troisième et la deuxième version de la spécification des Enterprise JavaBeans. Tout comme la plate-forme Java a révolutionné

Plus en détail

Analyse statique de programmes Typage et analyse statique au sein de Java

Analyse statique de programmes Typage et analyse statique au sein de Java Analyse statique de programmes Typage et analyse statique au sein de Java Master Professionnel Informatique spécialité FSIL/FSI Jean-Marc Talbot jean-marc.talbot@lif.univ-mrs.fr Aix-Marseille Université

Plus en détail

Introduction. Réalisation d'une application répartie (fournissant un ou plusieurs services)

Introduction. Réalisation d'une application répartie (fournissant un ou plusieurs services) Intergiciels Introduction Réalisation d'une application répartie (fournissant un ou plusieurs services) Bas niveau : Sockets Haut niveau : Intergiciels (Middleware) Appel de procédure à distance (RPC),

Plus en détail

Etude critique de mécanismes de sécurité pour l architecture Jini

Etude critique de mécanismes de sécurité pour l architecture Jini UNIVERSITE LIBRE DE BRUXELLES Année académique 2001-2002 Faculté des Sciences Département d Informatique Etude critique de mécanismes de sécurité pour l architecture Jini Pierre Stadnik Directeur de Mémoire:

Plus en détail

Introduction à JAVA. Philippe Roose (IUT Bayonne) Olivier Dedieu (INRIA)

Introduction à JAVA. Philippe Roose (IUT Bayonne) Olivier Dedieu (INRIA) Introduction à JAVA Philippe Roose (IUT Bayonne) Olivier Dedieu (INRIA) Mais JAVA c est quoi? Langage OO Exécuté dans une Machine Virtuelle Possède un ensemble complet d API (réseau, graphique, sécurité,

Plus en détail

Les formations. Développeur Logiciel. ENI Ecole Informatique

Les formations. Développeur Logiciel. ENI Ecole Informatique page 1/8 Titre professionnel : Inscrit au RNCP de Niveau III (Bac + 2) (J.O. du 19/02/13) 24 semaines + 8 semaines de stage (uniquement en formation continue) Développer une application orientée objet

Plus en détail

DotNet Remoting. Assia HACHICHI. dr.hachichi@gmail.com (basé sur un cours de Lionel Seinturier) Page 1

DotNet Remoting. Assia HACHICHI. dr.hachichi@gmail.com (basé sur un cours de Lionel Seinturier) Page 1 DotNet Remoting Assia HACHICHI dr.hachichi@gmail.com (basé sur un cours de Lionel Seinturier) Page 1 I Introduction 1. Introduction 2. Modèle de programmation 3. Caractéristiques techniques Invocation

Plus en détail

ADA 95 et la répartition

ADA 95 et la répartition CONSERVATOIRE NATIONAL DES ARTS ET METIERS PARIS (Année 2003 / 2004) MÉMOIRE D EXAMEN PROBATOIRE Spécialité : INFORMATIQUE, RÉSEAUX, SYSTEMES, MULTIMEDIA SUJET N 24 : ADA 95 et la répartition Recommandation

Plus en détail

TP d initiation aux systèmes et applications répartis

TP d initiation aux systèmes et applications répartis TP d initiation aux systèmes et applications répartis Grégory Mounié, Simon Nieuviarts, Sébastien Viardot Au début de l informatique, on exploitait simplement des ordinateurs. Maintenant, on construit

Plus en détail

JAVA PROGRAMMATION. Programme. 1. Java, HTML et World Wide Web

JAVA PROGRAMMATION. Programme. 1. Java, HTML et World Wide Web PROGRAMMATION PUBLIC Professionnels informatiques qui souhaitent développer des applications et «applets» Java DUREE 4 jours 28 heures OBJECTIF Créer divers «applets» à intégrer dans un site Web dynamique,

Plus en détail

Agents Mobiles/Code Mobile

Agents Mobiles/Code Mobile Systèmes Répartis Agents Mobiles Agents Mobiles/Code Mobile Modèles d exécution répartie et agents mobiles Infrastructure pour les agents mobiles Expérimentations Conclusion 1 Modèles d exécution répartie

Plus en détail

Systèmes répartis. Fabrice Rossi http://apiacoa.org/contact.html. Université Paris-IX Dauphine. Systèmes répartis p.1/49

Systèmes répartis. Fabrice Rossi http://apiacoa.org/contact.html. Université Paris-IX Dauphine. Systèmes répartis p.1/49 Systèmes répartis Fabrice Rossi http://apiacoa.org/contact.html. Université Paris-IX Dauphine Systèmes répartis p.1/49 Systèmes répartis Définition très large : un système réparti est système informatique

Plus en détail