0% ont trouvé ce document utile (0 vote)
101 vues13 pages

Introduction au RPC en programmation répartie

Transféré par

kiongamadeleine1981
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
101 vues13 pages

Introduction au RPC en programmation répartie

Transféré par

kiongamadeleine1981
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

PROGRAMMATION REPARTIE

Licence Informatique

Chapitre II: L’appel de procédure à distance (RPC)

Semestre 4

Par Vincent MANEV


Développeur

Année académique: 2021-2022


Chapitre II: L’appel de procédure à distance (RPC)
I- Presentation

• L’appel de procédures à distance RPC (Remote Procédure Call), est un outil de conception des
applications client-serveur.

Le RPC permet de développer des nombreuses applications client-serveur, tous types de services
à accéder à distance (serveur de fichiers, serveur de ressources, serveur d’authentification,
serveur d’accès à des données, serveur de traitements…)

• Principe de fonctionnement:

- le client invoque une procédure qui s ’exécute coté serveur.

- Tout se fait de manière transparente.

- Ne pas se préoccuper de la localisation de la procédure

- Ne pas se préoccuper du traitement de défaillances

- L’ exécution de la requête/réponse peut être locale ou distante.

1
Chapitre II: L’appel de procédure à distance (RPC)
2. Avantages

- Facilite la programmation dans la mesure où :

▪ La complexité des protocoles de communication est cachée


▪ Ne pas avoir à programmer des échanges au niveau réseau
- Facilité de mise au point : une application peut être mise au point sur
un site unique, puis déployée sur plusieurs sites

- Portabilité : résulte de l’usage d’un langage de haut niveau.


▪ Indépendance par rapport au système de communication

2
Chapitre II: L’appel de procédure à distance (RPC)
3. inconvénients

▪ Problème de transmission des paramètres: conversion entre la forme interne, propre à


un langage, et une forme adaptée à la transmission.

▪ Gestion des processus: il faut gérer les processus de façon séquentielle et parallèle .

▪ Réaction aux défaillances : trois modes de défaillance indépendants : client, serveur,


réseau.

4. Mise en œuvre : quatre modes de mise en œuvre :

- Par migration : Le code et les données de la procédure distante sont amenés sur le site
appelant pour y être exécutés par un appel local habituel.

▪ Par mémoire partagée : l’appel distant est réalisé en utilisant une mémoire virtuelle
partagée et répartie. La procédure est installée pour le client comme pour le serveur
dans la mémoire virtuelle partagée répartie, mais, réellement, elle est dans l’espace
mémoire du serveur. L’appel du client se fait comme si la procédure était locale
Chapitre II: L’appel de procédure à distance (RPC)
- Par messages: Deux messages (au moins) échangés à savoir la
requête et réponse. Le premier message correspondant à la requête est
celui de l'appel de procédure, porteur des paramètres d'appel. Le
second message correspondant à la réponse est celui du retour de
procédure porteur des paramètres résultats.

▪ Notion des souches: Un mode de réalisation par


interception. Une procédure intercepteur intercepte
l’appel d’un client vers un serveur et modifie le
traitement serveur à sa guise. Il y a donc
décomposition en intercepteurs coté client (souche
client), et intercepteur coté serveur(souche serveur).
 Étapes de mise en œuvre de RPC par message:
1- Le client réalise un appel de procédure vers la
souche client, la souche client collecte les paramètres et
les emballe dans le message d’appel.

5
2 - La souche client demande à une entité de
transport locale la transmission du message d'appel

3- Le message d’appel est transmis sur un


réseau au site serveur

4- Le message d’appel est délivré à la souche qui


déballe les paramètres

5- La souche serveur réalise l’appel effectif de la


procédure serveur

6- La procédure serveur ayant terminé son


exécution transmet à la souche serveur dans son retour
de procédure les paramètres résultats. La souche
serveur collecte les paramètres retour, les emballe dans
un message.

6
7- La procédure souche serveur demande à l ’entité
de transport serveur la transmission du message de
réponse.

8- Le message de réponse est transmis sur un


réseau au site client.

9- Le message de réponse est délivré à la souche


client. La souche client déballe les paramètres résultats.
10- La procédure souche client transmet les
résultats au client en effectuant un retour habituel de
procédure en mode local.

7
Représentation graphique

Client serveur
6 5
1 10
Souche serveur
Souche client

2 9 7 4
8
Transport Transpot
client serveur
3

8
 Par appel léger (LRPC):
- Le client (application cliente) et le serveur(application serveur)
se trouvent dans le même environnement et les appels de procédure
s’effectuent en local.

avantages:

- transmission d’appels très performant,


- Pas de gestion de protocoles réseaux
Inconvénient: aucune procédure ne fonctionne en cas de panne

10
LES IMPLEMENTATIONS DU RPC
On distingue deux types d’approches d’implémentation :
▪ Les approches traditionnelles:
- sun ONG (Open Network Computing)/RPC (Remote Procedure Call);
- OSF DCE (Open Software Foundation – Distributed Computing
Environnment);

▪ Les approches intégrées dans les systèmes à objets


réparties:
- Sun Java RMI: Remote Methode Invocation
- OMG-CORBA : Object Managment Group – Common Object Request
Brocker Architecture

9
- Microsoft DCOM: Distributed Component Object Model (remplacé
aujourd’hui par ,Net qui est plutôt orienté SOA),

 Les approches intégrées dans les systèmes de composants


- SUN J2EE EJB : Java 2 (Platform) Enterprise Edition - Entities Java
Beans

- OMG CCM: Object Management Group - Corba Component Model

10
FIN
Merci de votre attention

Vous aimerez peut-être aussi