Vous êtes sur la page 1sur 4

Chap1

Définition d’un système distribué :


Un ensemble d’entités autonomes qui apparaissent pour l’utilisateur comme un seul système cohérent
Autonomes :
Indépendate
- Absence de la notion d’horloge globale (problèmes de synchronisation et de coordination)
- Les nœuds sont programmés pour assurer des taches communes
Un ensemble=Gestion de groupes :
- Groupe privé vs groupe public
- Mécanismes d’admission des membres
Notion de topologie logique (Structurée vs non structurée)

Architecture d’un système distribué


1- La couche intermédiaire offre la même interface à toutes les machines afin d’assurer la
collaboration et l’interopérabilité
2- Le middleware pour les systèmes distribués est comme le système d’exploitation pour les
machines, c’est un gestionnaire de ressources pour les différentes applications qui communiquent
3- En plus des autres services comme: Facilté de communication, sécurité, gestion des comptes,
prise en charge des pannes.
Remarque : différence entre middleware et la couche entermediare
le middleware opère dans un milieu distribué

Deux points de vue: physique et logique sur un système distribue


Physique: ensemble de nœuds géographiquement distribués qui communiquent à travers un réseau physique
(ychofha comme des pc)
Logique : un ensemble de processus concurrents qui communiquent à travers des canaux (ychofha prgrm)

Connectivité de SD
Connectivité totale
• Mise en échelle difficile • Délai de transmission faible • Tolérant aux pannes
Connectivité partielle
Etoile (C/S) • La panne du nœud central provoque l’arrêt du système
Bus • La panne du canal principal empêche les nœuds decommuniquer
• Mise en échelle difficile car le canal va se congestionner

Arbre
• Mise échelle possible
• Complexité d’implémentation
Anneau
• L’ajout de nouveaux nœud dégrade le délai de communication
• Non tolérant aux pannes
modèles d’un système distribué
• en couche • basé Object • basé données
• basé évènements • basé espace de données partagées

Conception d’un système distribué


• Le partage des ressources
• Transparence de la répartition
• Ouverture
• La mise en échelle

Le partage de ressources
ressources : Périphériques, stockage, données, fichiers, services..etc
Raison économique :un seul espace de stockage vs plusieurs espaces de stockage
Collaboration
• Partage de l’espace mémoire, de périphériques... : ex Amazone Cloud
• Partage de logiciels : ex Google Sheet
• Partage de fichiers: ex Les réseaux P2P. Ex BiTorrent
La transparence
Acces hide si l’element accesible ou non
Location hide la location de lobjet
Relocation hide si lelement est deplacé pendant lutilisation
Migration hide si lelement peut etre deplacé
Replication hide si cet element est un replication
Concurrence hide si cet element peut etre partagé
Faile hide les panne …
une transparence totale n’est peut etre pas une bonne solution
il y’a un compromis entre un degré elevé de tranparence et les performances du système
Ex1:
Les application peuvent contacter un serveur en panne et repetent l’operation plusieurs fois ce qui
ralenti le fonctionnement alors qu’il valait mieux abandoner et passer a un autre serveur
• Ex2:
Mise à jour des replicas pour assurer la coherence peut prendre du temps
La transparence totale ne peut pas etre assurée à tous les coups
Il est peut être préférable de profiter de la distribution plutôt que de la cacher (Ex: les application de
geoloclisations pour trouver des lieux ou des amis proches...etc)
L’ouverture
Être capable d’intéragir avec d’autres systèmes ouverts en respectant les points suivants:
- Le système doit être Interopérable
Définir les services à travers des interfaces (utiliser IDL)
• Un langage qui permet de faire communiquer des modules implémentés
dans des langages différents, ou déployés à travers un réseau sur des systèmes hétérogènes.
- Le système doit comporter des applications portables
- Le système doit être extensible
(Ex: pouvoir ajouter des parties qui s’exécutent sur différents systèmes ou remplacer des
parties du système)

La mise en échelle
(size scalability) Nombre d’utilisateurs/processus/noeuds
(geographical scalability) Distance maximale entre deux noeuds
(administrative scalability) Nombre de domaines administratives

La majorité des systèmes s’intéressent à la 1e catégorie (serveurs puissants)

La mise en échelle: les mécanismes


1- Améliorer le délai de communication
Utiliser la communication asynchrone
Déplacer une partie du calcul au niveau du client
2- Partitionner les données et les calculs sur de multiples machines
• Les services de nommage décentralisés (DNS) (diviser l’espace de nommage en plusieurs
zones)
• Le World Wide Web (WWW)
3- Dupliquer les données sur différentes machines
Duplication des fichiers et des bases de données
Les site web mirroirs
Les caches Web

Types des systèmes distribués


• Systèmes de calcul de haute performance
• Les clusters (clusters)
• Les grilles d’ordinateurs (grid computing)
• Le cloud computing
• Systèmes pervasives
• Système d’information distribués

Systèmes de calcul de haute performance


Les clusters (clusters)
Un groupe homogene situés dans un même emplacement physique, sont gérés de manière centralisée et
optimisés pour des performances maximales par un nœud chef (clusterhead) permettent de résoudre des
problèmes complexes en fractionnant les calculs en plusieurs tâches parallèles
Les grille d’ordinateurs
est un réseau distribué de ressources informatiques géographiquement dispersées ➔ nœuds de calcul
situés dans différents centres de données, peuvent être hétérogènes en termes de matériel et de
capacités. ne sont pas nécessairement optimisées, La gestion est plus complexe car elle implique la
coordination de ressources hétérogènes. Des protocoles et des logiciels de gestion de grille sont utilisés pour
coordonner et distribuer les tâches sur les ressources disponibles.
Le cloud computing
Fournit des services informatiques via Internet, ce qui permet aux utilisateurs d'accéder à des ressources
informatiques à la demande sans avoir à posséder ni à gérer leur propre infrastructure matérielle
- Infrastructure as a Service (IaaS) :
Fournit des ressources informatiques virtualisées, telles que des serveurs, des réseaux et du
stockage.
- Platform as a Service (PaaS) :
Offre une plateforme de développement
- Software as a Service (SaaS) :
Fournit des applications logicielles accessibles via le cloud, telles que la messagerie
électronique, la gestion de projet, la gestion de la relation client (CRM), etc.
Systèmes ubiquitaires
- caractérisés par des nœuds de petite taille, mobiles, embarqués dans des systèmes
- sont intégrés dans l'environnement quotidien
- L'objectif principal de ces systèmes est de faciliter et d'améliorer la vie quotidienne
- divers domaines : la domotique (maisons intelligentes), la santé (dispositifs médicaux connectés),
la gestion des transports (véhicules autonomes), la logistique, l'industrie , l'environnement,
l'agriculture intelligente
Système d’information distribués
- pour gérer des transactions individuelles, souvent de courte durée et à haute fréquence, dans le
cadre d'une entreprise ou d'une organisation
- sont essentiels pour la gestion quotidienne des opérations commerciales
Exemples:
- Systèmes de Gestion de Bases de Données (SGBD)
- Systèmes de Points de Vente (POS)
- Systèmes Bancaires et Financiers
- Systèmes de Gestion des Stocks
- Systèmes de Suivi de Commandes

Vous aimerez peut-être aussi