Upload
majdi-boyka
View
216
Download
0
Embed Size (px)
Citation preview
8/7/2019 CAR ClientServeur
1/21
Applications Rparties
rc tecture ent erveur
INSAT 2009-2010
Atef Ben Ismail
8/7/2019 CAR ClientServeur
2/21
8/7/2019 CAR ClientServeur
3/21
One Tier (History)
+ Simple
+ Performante
+ Scuris
- Pas daccs distant
3 Application Rparties INSAT 2010
8/7/2019 CAR ClientServeur
4/21
Organisation des Applications Rparties (Rappel)
Application
Application Rpartie
4 Application Rparties INSAT 2010
Middleware
Systme de Communication
Rseau
OS
Support Physique de Communication
Machine
Interface
8/7/2019 CAR ClientServeur
5/21
Dfinition
Un systme est un ensemble de composants qui interagissent
Un service est un comportement dfini par contrat, qui peut tre implment et
fourni par un composant pour tre utilis par un autre composant, sur la base
exclusive du contrat (*)
Mise en oeuvre
Services et interfaces
Une interface dcrit linteraction entre client et fournisseur du service
Point de vue oprationnel : dfinition des oprations et structures dedonnes qui concourent la ralisation du service
Point de vue contractuel : dfinition du contrat entre client etfournisseur
(*) Bieber and Carpenter, Introduction to Service-Oriented Programming, http://www.openwings.org
5 Application Rparties INSAT 2010
8/7/2019 CAR ClientServeur
6/21
8/7/2019 CAR ClientServeur
7/21
Partie oprationnelle
Interface Definition Language (IDL). Pas de standard, mais sappuie sur un langage
existant
Partie contractuelle
Plusieurs niveaux de contrats:
Sur la forme : spcification de types -> conformit syntaxique
-
Dfinitions dinterfaces 2/2
smantique Sur les interactions entre mthodes : synchronisation
Sur les aspects non fonctionnels (performances, etc.) : contrats deQoS
7 Application Rparties INSAT 2010
8/7/2019 CAR ClientServeur
8/21
Dfinition
Un schma gnral dinteraction au niveau application
Mis en oeuvre sous des formes diverses (diffrents protocoles)
RPC, Java RMI, Services Web, etc.
Proprits
Le client demande lexcution dun service ; le serveur ralise le service
Le modle client-serveur
Client et serveur sont (en gnral, pas ncessairement) localiss sur deux machines
distinctes
Indpendance interface-ralisation
8 Application Rparties INSAT 2010
8/7/2019 CAR ClientServeur
9/21
Modle client-serveur : Principes 1/2
Requte
Rponse
Service 1
Service 2
Service n
Serveur
Client 1
Client 2
9 Application Rparties INSAT 2010
Client
Emet des requtes (demandes deservice)
Mode d'excution synchrone
Le client est l'initiateur du dialogueclient-serveur
Serveur
Ensemble de services excutables
Excute des requtes mises par desclients
-> excution des services (excutionsquentielle ou parallle)
8/7/2019 CAR ClientServeur
10/21
Communication par messages (plutt que par partage de donnes, mmoire
ou fichiers)
Requte : paramtres dappel, spcification du service requis
Rponse : rsultats, indicateur ventuel dexcution ou derreur
Communication synchrone (dans le modle de base) : le client est bloqu en
attente de la rponse
Modle client-serveur : Principes 2/2
10 Application Rparties INSAT 2010
8/7/2019 CAR ClientServeur
11/21
Vu du Client
Modle Client-Serveur : Partage du serveur
Vu du serveur
11 Application Rparties INSAT 2010
Excution du service (squentiel, concurrent)
Mmorisation ou non de ltat du client
8/7/2019 CAR ClientServeur
12/21
Structuration
fonctions bien identifies
sparation interface du service - ralisation
client et serveur peuvent tre modifis (remplacs) indpendamment
Protection
client et serveur sexcutent dans des domaines de protection diffrents
Intrt du modle Client-Serveur
Gestion des ressources
le serveur peut tre partag entre plusieurs clients
12 Application Rparties INSAT 2010
8/7/2019 CAR ClientServeur
13/21
Par des oprations de bas niveau
Utilisation de primitives du systme de communication
Exemple : sockets
Mode non connect (UDP)
Mode connect (TCP)
Par des oprations de haut niveau
Mise en oeuvre du schma client-serveur
Contexte : langage de programmation
Appel de procdure distance
Contexte : objets rpartis
Appel de mthodes, cration dobjets distance
13 Application Rparties INSAT 2010
8/7/2019 CAR ClientServeur
14/21
Architecture Client-Serveur (2-Tier) 1/3
14 Application Rparties INSAT 2010
8/7/2019 CAR ClientServeur
15/21
Processus cooprant pour excuter une tche
Caractristiques principales dun client
Consommateur de service Proactif: lorigine de la demande
Caractristiques principales du serveur
Architecture Client-Serveur (2-Tier) 2/3
Ractif
Traitement de plusieurs clients
Contrle daccs
Garant de lintgrit globale
15 Application Rparties INSAT 2010
8/7/2019 CAR ClientServeur
16/21
+ Design Modulaire
+ Minimum de trafic Rseau
+ HMI peut tre spar de la logique mtier
+ Pas de duplication de donnes (tat global observable)+ Gestion simple de la cohrence et de lintgrit des donnes
+ Matrise globale des traitements
Architecture Client-Serveur (2-Tier) 3/3
- Concevoir/Implmenter un Protocol de Communication solutions propritaires- Concevoir/Implmenter la persistance des donnes
- Economiquement trop coteux
Serveur
Client 1
Client 2
Client 3
16 Application Rparties INSAT 2010
8/7/2019 CAR ClientServeur
17/21
Architecture 3-Tier 2/3
17 Application Rparties INSAT 2010
IHMServeur
traitementServeurdonnes
8/7/2019 CAR ClientServeur
18/21
Compose de trois lments (3 couches)
La couche prsentation (HMI)
La couche fonctionnelle lie au serveur (ex. Web server)
La couche de donnes lie au serveur de base de donnes (SGBD)
Architecture 3-Tier 2/3
18 Application Rparties INSAT 2010
8/7/2019 CAR ClientServeur
19/21
+ Flexibilit des requtes client
+ Client lger
+ Flexibilit dans lallocation des ressources+ meilleure rpartition de charge
+ conomiquement moins cher
Architecture 3-Tier 2/3
+ volutif- Administration plus complique
- Mise en oeuvre plus complique
- Mapping Objet Relationnel difficile
19 Application Rparties INSAT 2010
8/7/2019 CAR ClientServeur
20/21
Nombre illimit de parties
Supporte plusieurs applications
N-Tier
20 Application Rparties INSAT 2010
8/7/2019 CAR ClientServeur
21/21
www.alcatel-lucent.com -
21 | A look Forward | January 2010