- Architecture distribuée
-
L’architecture d'un environnement informatique ou d'un réseau est dite distribuée quand toutes les ressources ne se trouvent pas au même endroit ou sur la même machine. On parle également d'informatique distribuée. Ce concept s'oppose à celui d'architecture centralisée dont une version est l'architecture client-serveur.
Internet est un exemple de réseau distribué puisqu'il ne possède aucun nœud central. Les architectures distribuées reposent sur la possibilité d'utiliser des objets qui s'exécutent sur des machines réparties sur le réseau et communiquent par messages au travers du réseau.
Sommaire
Les soubassements technologiques de l'informatique distribuée
Au début de l'informatique, le dialogue entre machines nécessitait une connaissance approfondie des protocoles réseau et parfois même du matériel réseau. La programmation orientée objet a permis le développement des architectures distribuées en fournissant des bibliothèques de haut-niveau pour faire dialoguer des objets répartis sur des machines différentes entre eux, ce qui a considérablement allégé le travail des programmeurs. Les objets distribués sur le réseau communiquent par messages en s'appuyant sur l'une des technologies suivantes:
- Common Object Request Broker Architecture ou CORBA : ce standard de l'Object Management Group permet de faire communiquer des objets écrits dans des langages différents (C++, Java, Smalltalk) et même d'encapsuler des programmes écrits dans des langages procéduraux pour les faire passer pour des objets
- Remote Method Invocation ou RMI : cette technologie de Sun permet de faire communiquer très simplement des objets java distribués sur le réseau.
- Les services web XML
- .NET Remoting
- Windows Communication Foundation
Les avantages de l'informatique distribuée
L'augmentation des ressources
Le seul fait de distribuer les traitements sur les ordinateurs d'un réseau augmente les ressources disponibles. En théorie, si le réseau est internet, tous les ordinateurs connectés constituent les ressources potentielles. C'est le sens du slogan de Sun : "The Computer is the Network". Les projets de calcul réparti tirent parti de cette formidable ressource de processeurs que sont les ordinateurs inactifs connectés à internet.
Un célèbre exemple de calcul distribué est SETI@Home issu du projet Search for Extraterrestrial Intelligence, qui met à contribution tous les ordinateurs volontaires d'internet pour détecter une intelligence extra-terrestre. Les ordinateurs effectuent la même tâche (décryptage de signaux spatiaux), chacun sur un coin de ciel différent. Ce projet a fédéré plus de 5 millions de personnes différentes à travers le monde et a crédibilisé le calcul partagé (à défaut d'avoir découvert d'extraterrestres pour le moment). Les projets comportant des calculs parallélisables sont de bons candidats pour une architecture distribuée (séquençage de motifs d'ADN).
La répartition des données et des services
Une architecture distribuée courante est l'architecture trois tiers à la base de la plupart des applications distribuées de commerce électronique. Cette architecture permet d'interroger et de mettre à jour des sources de données réparties. Les services web permettent de faire appel à différents serveurs pour enrichir une prestation (l'achat d'un séjour touristique peut comprendre l'achat d'un billet d'avion, d'un séjour hôtelier et d'une assurance annulation auprès de différents vendeurs par l'intermédiaire de services web, donc d'objets distribués sur le réseaux et dialoguant par des messages.
Le peer-to-peer (ou poste à poste)
Le modèle peer-to-peer (partage de fichiers) est un exemple de réussite des architectures distribuées où chaque ordinateur est à la fois serveur de données et client des autres. Ce modèle peut être appliqué au partage de ressource.
Les perspectives des architectures distribuées
L’une des évolutions attendues dans les temps à venir est le remplacement des achats de logiciels informatiques par des locations de ces mêmes logiciels, pour le temps nécessaire à leur utilisation. On peut imaginer, par exemple, qu'il sera possible, à partir d'un logiciel de traitement de texte, de faire appel à différents services de corrections orthographiques disponibles sur Internet, et dont on louera les services selon les besoins.
Pages connexes
- Calcul distribué
- Peer-to-peer
- Architecture trois tiers
- Client-serveur
- Search for Extraterrestrial Intelligence
- Programmation orientée objet
- Réseau
- Web 2.0
- Service Oriented Architecture
Liens externes
Bibliographie
- Hugues Bersini, L'orienté objet, Eyrolles, 2004 (ISBN 2-212-11538-5).
- Annick Fron, Architectures réparties en Java, Dunod, 2007 (ISBN 978-2-10-051141-9)
- Laurent Aubanel, Informatique appliquée, t. 1, Roanne, 2008 (ISBN 978-2-35446-010-5)
Wikimedia Foundation. 2010.