Notion de communauté dans des systèmes distribués de Montréal
L’architecture des systèmes distribués
description
Transcript of L’architecture des systèmes distribués
Le contenu est basé aux transparents du 7ème édition de «Software Engineering» de Ian Sommerville
B.Shishedjiev - Génie logiciel 1
L’architecture des systèmes distribués
B.Shishedjiev - Génie logiciel 2
Caractéristiques• Partage des ressources• Ouverts – Utilisent de matériel et logiciel de
différents sources• Parallélisme• Expansible• Tolérance aux fautes – continuer après une
faute
B.Shishedjiev - Génie logiciel 3
Désavantages• Complexité• Sécurité• Gestion plus difficile• Unprévisible
B.Shishedjiev - Génie logiciel 4
Architectures distribuées• Client-serveurs• Objets distribués• Systèmes multiprocesseur
B.Shishedjiev - Génie logiciel 5
Systèmes multiprocesseurs• Caractéristiques
– Plusieurs processus– Gestion
• Pré-ordonnée• Géré par un répartiteur
– Il n’y a pas une correspondance stricte entre processus et processeurs
• Utilisation –– les systèmes de temps réel– Les grilles informatiques (grids)
B.Shishedjiev - Génie logiciel 6
Systèmes multiprocesseurs• Gestion des feux de signalisations
B.Shishedjiev - Génie logiciel 7
Client - serveur• Caractéristiques
– Des processus logiques– Les clients
• utilisent des services• connaissent les serveurs
– Les serveurs • assurent les services• Ne connaissent pas les clients
• Types– Client lourd– Client léger
B.Shishedjiev - Génie logiciel 8
Couches d’application
Couche de présentation
Couche de traitements
Couche de gestion des données
B.Shishedjiev - Génie logiciel 9
Client lourd et client léger
B.Shishedjiev - Génie logiciel 10
Client- serveur• Client léger
– Utilisé quand on migre des vieux systèmes vers C/S systèmes
– Serveur et réseau surchargés • Client lourd
– Le travail et mieux distribué– Gestion plus difficile– Chaque modification exige réinstallation de tout client
B.Shishedjiev - Génie logiciel 11
Exemple• Disributeur des billets
Account server
Customeraccountdatabase
Tele-processingmonitor
ATM
ATM
ATM
ATM
B.Shishedjiev - Génie logiciel 12
Architecture 3-rayons
B.Shishedjiev - Génie logiciel 13
Utilisation de cleint-serveurArchitecture Application
2-rayons – client léger
Des systèmes évoluésDes systèmes avec peu de données transmis – compilateurs Des systèmes avec beaucoup de données mais sans traitement des données - navigation
2-rayons – client lourd
Traitement produit par des systèmes prêts - ExcelQuand on a besoin d’un traitement intensif des données – visualisationQuand la fonctionnalité du client est stable
3-rayons Larges systèmes avec des clients nombreuxLes données et les traitements sont volatilsIntégration des données des plusieurs sources.
B.Shishedjiev - Génie logiciel 14
Architecture d’objets distribués• Caractéristiques
– Il n y a pas différence entre objet client et objet serveur
– Chaque objet distribuable peu chercher des services et de fournir de services
– La communication est réalisée par un composant appelé «object request broker» (broker des requêtes objet)
• Avantages– Ouvert– Flexible– Facilement modifié
B.Shishedjiev - Génie logiciel 15
Architecture d’objets distribués
Object request broker
o1 o2 o3 o4
o5 o6
S (o1) S (o2) S (o3) S (o4)
S (o5) S (o6)
B.Shishedjiev - Génie logiciel 16
Data mining
Database 1
Database 2
Database 3
Integrator 1
Integrator 2
Visualiser
Display
Report gen.
B.Shishedjiev - Génie logiciel 17
Data mining• Particularités
– Flexibilité – on peut ajouter nouveaux sources– Chaque intégrateur peut déduire certain type de
relation. Pour nouveau types on peut ajouter d’intégrateurs.
B.Shishedjiev - Génie logiciel 18
CORBA• Standard CORBA• Types d’objets
– Objets d’application– Objets standard pour un domaine– Services fondamentales – Répertoires et sécurité– Objets horizontaux – communes pour plusieurs
domaines
B.Shishedjiev - Génie logiciel 19
CORBA
CORBA services
Domainfacilities
Horizontal CORBAfacilities
Applicationobjects
Object request broker
B.Shishedjiev - Génie logiciel 20
CORBA• Communication entre objets
– IDL (Interface Defining Language)– Souches (stubs) et squelettes (skeletons)
B.Shishedjiev - Génie logiciel 21
CORBA
o1 o2
S (o1) S (o2)
IDLstub
IDLskeleton
Object Request Broker
o3 o4
S (o3) S (o4)
IDLstub
IDLskeleton
Object Request Broker
Network
Services CORBA• Naming • Trading• Notification• Transaction• ……
B.Shishedjiev - Génie logiciel 22
B.Shishedjiev - Génie logiciel 23
P2p architecture• Caractéristiques
– L’application comporte tout protocole de communication
– Chaque nœud a une copie de l’application• Pure • Semi centralisé
P2p architecture• P2p décentralisé
B.Shishedjiev - Génie logiciel 24
n1
n2 n3
n4
n5
n6
n7
n8
n9 n10 n11
n12
n13
n13
B.Shishedjiev - Génie logiciel 25
P2p architecture
Discoveryserver
n1
n2
n3
n4
n5
n6
• P2p semi-centralisé
B.Shishedjiev - Génie logiciel 26
Architecture orienté vers services
Serviceregistry
Servicerequestor
Serviceprovider
Publish
Bind
Find
service
B.Shishedjiev - Génie logiciel 27
Standards de services Web• Services based à SOAP
– SOAP (Simple Object Access Protocol)– WSDL (Web Services Description Language)– UDDI (Universal Description, Discovery and
Integration)• REST (Representational State Transfer)
B.Shishedjiev - Génie logiciel 28
Exemple de SOA• Système d’information de véhicle
User interface
Locator
Discovers carposition
Weatherinfo
Receives requestfrom user
ReceiverReceives
information streamfrom services
T ransmitterSends position andinformation request
to services
RadioT ranslates digital
info stream toradio signal
In-car software system
Mobile Info Service
F acilitiesinfo
T ranslator
Roadlocator T raffic
info
Collates information
Road traffic info
commandgps coord
gpscoord gps coordgps coord
LanguageinfoInfo
stream
Service discoveryFinds available
services