Présentation
EnglishAuteur(s)
-
Michel RIVEILL : Professeur à l’université de Nice‐Sophia‐Antipolis
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleINTRODUCTION
Pour faire communiquer deux morceaux d’une même application ou deux applications distinctes, les programmeurs pouvaient jusqu'à présent utiliser trois propositions difficilement compatibles : COM+, la version distribuée du modèle objet de Microsoft limitée dans les faits au monde Windows ; CORBA, spécification normative d'un bus objet multi-plate-forme et multilangage et le modèle des Enterprise Java Beans (EJB), spécification d'architecture pour la construction et l'exécution de composants Java proposée par Sun. Indépendamment des apports des uns et des autres, qui sont en dehors de cette étude, peu de passerelles logicielles permettent de convertir aisément les requêtes issues d’un environnement afin qu'elles soient acceptées dans un autre environnement. Il est donc illusoire de vouloir faire cohabiter simplement au sein d’une même application plusieurs bus logiciels (« middleware ») d’interconnexion. Le besoin étant essentiel, plusieurs types de passerelles existent.
Microsoft, IBM et d’autres par la suite, observant que les incompatibilités et la lourdeur de ces propositions conduisaient au développement de solutions fondées sur des requêtes HTTP, ont introduit SOAP (Simple Object Access Protocol), un protocole de communication entre objets, très simple, reposant sur les acquis de l’Internet. En particulier, cette proposition utilise XML pour la description des requêtes et HTTP pour leur transport, ce qui permet d’éviter les problèmes liés au filtrage par des pare-feu (« firewall »). Ces deux standards, largement diffusés, sont utilisés en lieu et place de tout autre schéma propriétaire. Pour être plus précis, SOAP consolide et rend normative une proposition existante « XML-RPC ». SOAP, soumis à l’IETF et adopté par le W3C, comble une lacune du Web.
L’objectif de ce document est de présenter les principes de fonctionnement de SOAP ainsi que de donner quelques exemples d’utilisation.
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
7. Conclusion
L’appel de procédure à distance (RPC) ou son équivalent dans le monde objet (l’appel de méthode à distance RMI) sont des modèles de structuration qui permettent de décrire l’interaction entre deux composants logiciels qui communiquent par échange de messages. Un des deux composants, le client, a l’initiative du dialogue et reste généralement bloqué pendant que l’autre composant, le serveur, traite la requête. Ce modèle est sans doute le plus répandu pour la mise en œuvre d’applications réparties. La raison principale de ce succès tient au fait que l’appel de procédure à distance s’efforce de reproduire pour un environnement réparti les conditions d’un appel de procédure local (à la fois sur le plan du modèle de programmation et sur le plan du modèle d’exécution).
Ce modèle de programmation est aujourd’hui largement utilisé pour accéder à des services distants et il est logique que celui-ci puisse directement être utilisé pour construire, à l’aide des protocoles du Web, des applications réparties. Pour cela, nous avons présenté un protocole simple et extensible, indépendant des langages de programmation et des plates-formes d’exécution. Ce protocole, SOAP, qui permet de s’affranchir de la présence des pare-feu grâce à un couplage étroit avec HTTP, devrait trouver aisément sa place.
Les données échangées par le protocole SOAP sont codées en XML, ce qui permet de conserver leurs types et de pouvoir les traiter de manière applicative ou de les afficher directement à l’aide d’un navigateur et d’une feuille de style. Pour sa mise en œuvre, SOAP ne bouscule les infrastructures existantes et s’adapte à l’existant en essayant de prendre le meilleur dans les différentes propositions. Actuellement SOAP est en cours d’adoption par le W3C et les outils nécessaires à une manipulation aisée ne sont pas encore tous disponibles. Il manque en particulier, des outils de génération de proxy et de déploiement correctement intégrés afin que SOAP soit réellement souple et simple.
L’appel de procédure à distance (RPC) est un mécanisme de « bas niveau » qu’il est nécessaire de compléter par différents services additionnels pour la construction d’applications réparties opérationnelles comme un service de désignation, de sécurité, de gestion du temps ou encore de gestion de fichiers répartis....
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Conclusion
BIBLIOGRAPHIE
-
(1) - GUDGIN (M.), HADLEY (M.), MOREAU (J.J.), NIELSEN (H.-F.) - * - SOAP Version 1.2. W3C Working Draft, 9 juill. 2001 http://www.w3.org/TR/soap12/
-
(2) - SCRIBNER (K.), STIVER (M.C.), SCRIBNER (K.) - Understanding SOAP : The Authoritative Solution. - 1re éd., Ed. Sams, janv. 2000.
-
(3) - XML Cover Pages - http://www.oasis-open.org/cover/
-
(4) - McLAUGHLIN (Br.) - Java and XML. - 1re Éd., O’Reilly & associates, juin 2000.
-
(5) - BIRREL (A.D.), NELSON (B.J.) - Implementing Remote Procedure Call. - ACM Transactions on Computer Systems, 2 (1), 39-59 (1984).
-
(6) - FIELDING (R.), GETTYS (J.), MOGUL (J.C.), FRYSTYK (H.), BERNERS-LEE (T.) - Hypertext Transfer Protocol - HTTP/1.1. - RFC 2616, U.C. Irvine, W3C/MIT, janv. 1997.
-
...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(240 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive