Sie sind auf Seite 1von 7

Cours 3 :

Les Services Web Définition et Architecture

0- Les Services Web : généralité


 Les services Web est une technologie pour la gestion des systèmes d'information et l'intégration
des entreprises dans l'infrastructure du Web.
 Les web services permettent l’invocation de fonctions distantes, présentes sur des systèmes
distribués et hétérogènes, grâce au protocole HTTP et XML.
 Les services web sont des applications auto‐ descriptives, modulaires et faiblement couplés qui
fournissent un modèle de programmation et de déploiement d’applications, basé sur des normes,
et s’exécutant au travers de l’infrastructure web.
 Les services web peuvent être implémentés sur différentes plateformes et avec des langages
variés, ils deviennent un moyen technique intéressant pour interconnecter des modules
s’exécutant sur des plate‐ formes hétérogènes.
 Un service web est une application conçue pour assurer une interopérabilité entre machines au
travers d’un réseau.
 Un web service est une interface qui décrit un ensemble d’opérations accessibles via un réseau
par des messages XML standards.

1- Les services Web : Définition


 Il existe plusieurs définitions d'un service Web, dont voici celle fournie par le W3C en version
anglaise :

Definition (Web Service (W3C))

A Web service is a software system designed to support interoperable


machine‐to‐machine interaction over a network. It has an interface described in a
machin‐tractable format (specifically WSDL). Other systems interact with the Web service in a
manner prescribed by its description using SOAP‐messages, typically conveyed using HTTP
(hypertext transfer protocol) with an XML serialization in conjunction with other Web‐related
standards.

« Un service web est un système logiciel conçu pour permettre l’interopérabilité entre
les machine sur un réseau. Il possède une interface qui décrit, dans un format normalisé, le
moyen de communiquer avec la machine (par exemple : WSDL). D’autres systèmes
interagissent avec les services web, conformément à l’interface, en utilisant des messages
SOAP envoyés par le protocole HTTP et écrits en XML, en liaison avec d'autres standards
relatifs au web ».

2- Les services Web : Propriétés


La notion de « Web Service » désigne essentiellement une application (un programme ) mise à la
disposition sur internet par un fournisseur de service, et accessible par les clients à travers des protocoles
internet standards.

Le consortium W3C (http://www.w3.org/2002/ws/) définit un web service comme étant une


application ou un composant logiciel qui vérifie les propriétés suivantes :
 Il est identifié par un URI,
 Ses interfaces publiques et ses liens (binding) sont définies et décrites en XML,
 Sa définition peut être découverte (dynamiquement) par d’autres systèmes logiciels (ou d’autres web
services),
 Ces autres systèmes peuvent ensuite interagir avec le service web d’une façon décrite par sa
définition, en utilisant des messages XML transportés par des protocoles Internet.

3- Les services Web : caractéristiques


 Les services Web proposent diverses fonctionnalités que d’autres programmes peuvent :
o Découvrir dynamiquement
o Utiliser grâce à des protocoles
 Décrits en XML
 Basés sur l’échange de messages
 écrits en XML
 transmis par HTTP, FTP, SMTP, etc.
 Caractéristiques
o Réutilisable
o Indépendamment de
 La plate‐forme (UNIX, Windows, …)
 L’implémentation (VB, C#, Java, …)
 L’architecture sous‐jacente (.NET, JEE, …)

4- Les services Web : définition plus pratique


 Les services Web est une application informatique qui :
o Possède une URI,
o Hébergé par un serveur d’application qui est composée de procédures dont l’exécution
représente un service proposé à un autre programme informatique, nommé client, et qui est
accessible sur internet par l’utilisation de protocoles standards (HTML, XML,….)
5- Les composants d’un Services Web
Trois composants sont nécessaires dans un web service :

 Un protocole pour décrire le


service (idéalement il doit lister
les méthodes disponibles et leurs
arguments….);
 Un protocole décrivant la
composition des messages;
 Un protocole de transport pour
faire circuler les informations sur
internet.

6- Exemple de services existants


 Google (http://www.google.com/apis/) Accès gratuit mais limité (1000 requêtes par jour après
enregistrement).

 Amazon (http://aws.amazon.com/fr/ ) Accès gratuit mais limité (1 requête par seconde après
enregistrement).

 Pour la création d’un nuage de tags: Wordle: http://www.wordle.net/ un outil pour créer des nuages
de mots à partir d’un texte écrit. Idéal pour les biographies pour mettre en avant les éléments clés de
la vie d’un personnage historique de façon originale.

 Tag Cloud Generator http://www.tagcloud-generator.com Représentation visuelle des mots‐clefs les


plus utilisés sur un site web.

 Tagxedo: www.tagxedo.com une application originale permettant de créer une image à partir d'un
nuage de mots.

 Outils qui permettent d’organiser, de communiquer et de planifier un travail travail, exemple :Google
Docs, SlideRocket:, Toggl (Free Time Tracking Software), etc…

 Outils pour réduction d’URL (exemple : goo.gl, TinyURL, bit.ly, etc….)

 De nombreux services proposés par Google https://developers.google.com/apis‐explorer/#p/ ,


Exemple:
1. Analyse de données
2. Traduction
3. Réduction d’URL
4. Statistique fréquentation site web
5. etc…….
7- Les différentes Architecture des Services Web
 Utilisé un service web consiste a invoquer une méthode qui est disponible sur une machine distante
accessible via Internet. Il existe de très nombreux moyens de fournir ce type de service, mais
généralement les web services existent sous trois architectures :
o Architecture XML‐RPC (Remote Procedure Call)
o Architecture SOAP (Simple Access Protocol).
o Architecture REST (REpresentational Stage Transfert)

8- Architecture générale des Services Web et des clients


 La partie droite décrit (Web service) décrit les trois types d’architecture d’un service web
(XML‐RPC, REST, SOAP).
 La partie centrale (interface) décrit les interfaces permettant d’utiliser les web services (Bibliothèque
JEE, C #, PHP, Ajax).
 La partie gauche (client) figure tous les clients des web services avec les technologies utilisées (java,
C #, PHP, ou encore javaScript).

9- Architecture Services Web : SOAP/HTTP/WSDL


 Lorsque l’on parle d’architecture SOAP cela correspond a une architecture Client/Serveur utilisant
les technologies SOAP/HTTP/WSDL.
 Il y a deux façons de voir l'architecture SOAP :
o La première consiste à examiner les rôles de chaque acteur du service Web dans cette
architecture.
La collaboration entre services web s’appuie sur un modèle d’interaction dont les composants assurent
trois rôles :

 Le fournisseur de service : correspond au propriétaire du service. D’un point de vue technique, il


s’agit de la plate‐forme qui héberge l’accès au service.
 Le client : correspond au demandeur de service et consiste à demander certain fonctionnalités à
satisfaire. D’un point de vue technique, il s’agit d’une application qui recherche et qui invoque une
interaction avec un service. Le rôle du demandeur de service peut être assuré par un browser piloté
par une personne ou un programme sans interface utilisateur, par exemple un autre web service.
 L’annuaire de service : Correspond à un registre de description de services offrant des facilités de
publication de services à l’intention des fournisseurs ainsi que des facilités de recherche de services à
l’intention des clients.

 Les interactions de base entre ces trois rôles incluent les opérations :
 1. de publication de description de service (Publish)
 2. de recherche et la découverte de la bonne description du service (Find,Discover)
 3. L’invocation des services basée sur la description (Bind invoke)
 Dans ce scénario, le fournisseur de service définit la description de son service et la publie dans un
annuaire de service. Le client utilise les facilités de recherche disponibles au niveau de l’annuaire
pour retrouver et sélectionner un service donné. Il examine ensuite la description du service
sélectionné pour récupérer les informations nécessaires lui permettant de se connecter au fournisseur
de service et d’interagir avec l’implémentation du service considéré.
o la seconde consiste à examiner la pile des protocoles relative aux services web relative à cette
architecture.

La deuxième option pour visualiser l'architecture de services Web est d’examiner la pile des
protocoles émergents dans les services web. La pile dispose actuellement de quatre couches principales.

 Service transport

Cette couche est responsable du transport des messages entre les applications. Cette couche inclut le
protocole HTTP (hypertext transfer protocol), le protocol SMTP (Simple Mail Transfer), le protocol FTP
(file transfer protocol), etc.…

 XML messaging

Cette couche est responsable pour l’encodage des messages dans un format commun XML de sorte que
les messages peuvent être compris à chaque extrémité. Cette couche comprend XML‐RPC et SOAP.

 Service description

Cette couche est responsable de la description de l'interface publique d'un service web spécifique. La
description de service est gérée via WSDL (Web Service Description Language).

 Service discovery

Cette couche est responsable de la centralisation des services dans un registre commun. Elle fournir et
faciliter les fonctionnalités de publication/recherche. Le service de découverte est traité via UDDI (Universal
Description Discovery and Integration).
10- Caractéristiques Techniques des services Web
Les différentes couches (HTTP, SOAP, WSDL, UDDI) garantissent l’interopérabilité des trois
opérations suivantes : la Publication, la Recherche et le Lien.

Ce nouveau modèle de programmation et de déploiement d'application assure l'interconnexion de


services logiciels en se basant sur ces standards (HTTP, XML, SOAP, WSDL, UDDI) pour faciliter le
transport, l'invocation, la description et la recherche des services Web.

 Lorsqu’un service Web est déployé, les autres applications (et autres services Web) peuvent
le découvrir et l'invoquer.
 Les services Web peuvent être répartis sur différents serveurs, s'invoquer mutuellement à
travers un réseau local ou étendu dans le cadre des échanges électronique B2B (Business‐to
Business) ou B2C (Business‐to‐Consumer) en utilisant les standards XML.

Das könnte Ihnen auch gefallen