eServices-Chp6: WOA
-
Upload
lilia-sfaxi -
Category
Technology
-
view
405 -
download
2
Transcript of eServices-Chp6: WOA
WOA: Web Oriented Architecture Chapitre 6 - eServices
GL5 2015/2016
Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i
S l ide 1
SOA est…
• Une architecture logicielle modulaire où les modules sont des services interagissant les uns avec les autres
• Une approche top-down • Contient des constructions de haut niveau:
• Applications composites, orchestration, coordination…
• Basée sur des standards ouverts pour encourager l'interoperabilité
• LE modèle organisationnel dominant pour une architecture d'entreprise
Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i
S l ide 2
SOA vs Web
On the other hand, le Web…
• Défini par: • Un protocole de transfert simple: HTTP (HyperText Transfer
Protocol) • Le langage HTML (HyperText Markup Language) pour décrire les
ressources disponibles • Un identifiant unique pour chaque ressource : URI (Unique
Resource Identifier) • Ne présente pas de limites pour les types de données
transférées via HTTP • Ne présente pas de limites sur la quantité de données
transférées • HTTP est extensible: il suffit de voir la taille du web Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i
S l ide 3
SOA vs Web
Convergence entre Web 2.0 et SOA
Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i
S l ide 4
SOA vs Web
SOAP ou REST, that is the question!
SOAP Tout est dans le message (entête, infos de sécurité…)
XML
WSDL : description de service (peut être très complexe)
Spécification WS-*
REST Tout est ressource, adressable via URI
Interface uniforme (GET, POST, PUT, DELETE…)
Client/Serveur
Stateless
Les réponses peuvent être stockées en cache
Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i
S l ide 5
REST
Pourquoi REST?
• Règle générale : "Unless you have a definitive reason to use SOAP, use REST"
• REST est beaucoup plus simple, car basé sur le standard HTTP • REST autorise plusieurs formats de données, alors que SOAP n'accepte
que XML • Son support pour JSON, par exemple, lui donne un meilleur support pour les
navigateurs web
• Meilleure performance, car ses lectures peuvent être stockées en mémoire cache
• Utilisation de REST: • Yahoo l'utilise pour tous ses services • Amazon et eBay fournissent les deux types de services web • Google a changé vers REST en 2006
Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i
S l ide 6
REST
Pourquoi SOAP?
• WS-Security • SOAP et REST supportent SSL • Support des autres caractéristiques fournies par WS-Security, ce que REST
ne fait pas • REST fait juste du point-to-point, et ne supporte que SSL/TLS
• WS-AtomicTransaction • Manipulation des transactions ACID sur un service • REST est limité par HTTP, qui ne peut pas fournir un two-phase commit à
travers des ressources distribuées (la plupart des applications internet n'en ont pas besoin, mais les applications entreprise, si)
• WS-ReliableMessaging • SOAP supporte la gestion des fautes pour les messages: logique
successful/retry interne • REST laisse aux utilisateurs le soin de gérer les problèmes de
communication en réessayant
Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i
S l ide 7
REST
Définition de la WOA
• Style d'architecture logicielle qui étend la SOA pour les applications Web
• Considéré comme une version légère de la SOA • Utilise l'architecture REST
"En d'autres termes, le modèle Web fournit une architecture unique, ouverte, et unifiée, qui est à la fois consistante, facilement consommée, extrêmement extensible, sécurisable, très réutilisable, résiliente, et hautement fédérée"
Dion Hinchcliffe
Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i
S l ide 8
WOA
WOA: Seulement REST?
• REST est le protocole de base pour WOA • WOA inclut également un ensemble de modèles de consommation extraits
du web, comme: • Mashup: Agrégation de contenu provenant d'autres sites grâce à des APIs ou
flux RSS • Web Widgets (ou Gadgets): un bout de code portable qui peut être installé et
exécuté dans une page web • WOA inclut un ensemble de standards largement utilisés pour la
représentation, l'échange et la portabilité des données que REST ne supporte pas: • OpenID: Système d'authentification décentralisé permettant l 'authentification
unique et le partage d'attributs • O-Auth: protocole permettant à un site consommateur de manipuler les
données d'un utilisateur dans un autre site fournisseur, mais seulement à sa demande (délégation d’autorisation)
• Microformats: Approche de formatage de données dans des pages web pour standardiser leur contenu en utilisant des classes et attributs de balises HTML et XHTML
Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i
S l ide 9
WOA
WOA: SOA + Web 2.0
Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i
S l ide 10
WOA
La pile WOA
Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i
S l ide 11
WOA
Distribu(on : Feeds, APIs, Widgets
Composi(on : Intégra3on, Mashup, Web Widgets
Sécurité: SSL, O-‐Auth, HMAC-‐SHA-‐1
Portabilité des données: OPML
Représenta(on des données : XML, JSON, etc.
Méthodes de transfert : HTTP/REST, BitTorrent
Mais WOA, c’est aussi de la SOA!
Elle respect les 8 principe de la Service Orientation • Service Reusability • Service Contract • Service Loose Coupling • Service Abstraction • Service Composability • Service Autonomy • Service Statelessness • Service Discoverability
Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i
S l ide 12
WOA
… avec quelques différences…
SOA a en général un petit ensemble bien défini de terminaisons (endpoints) à travers lesquels plusieurs données et types de données peuvent passer
• WOA alloue à chaque ressource une terminaison, représenté par une URI
SOA construit une couche de messages au dessus de HTTP grâce à SOAP et WS-*
• WOA utilise HTTP et ses mécanismes de transfert associés comme la meilleure abstraction pour la plupart des applications
SOA est conçu comme étant Top-down par les vendeurs • WOA est créée par une communauté de développeurs (bottom-up)
SOA utilise WS-Security et autres standards sophistiqués pour la sécurité WOA utilise juste HTTPS, OAuth et HMAC-SHA-1
Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i
S l ide 13
WOA
À quoi ressemble une organisation utilisant WOA?
• Une toile riche de ressources REST • Un ensemble d'outils pour "tisser" cette toile de ressources
dans les nouvelles applications • Un ensemble de composants WOA consommables et
réutilisables incluant des widgets, gadgets, réseaux sociaux intégrés…
• Un ensemble d'APIs web publiques exposées sur Internet aux éventuels partenaires
Dr. L i l i a SFAXI www. l i l i asfax i .wix .com /l i l i asfax i
S l ide 14
WOA
Articles REST vs SOAP, The difference between SOAP and REST, par Steve Francia, http://spf13.com/post/soap-vs-rest vu le 14/12/2014 Web Oriented Architecture, une transmutation des pratiques de construction des systèmes d'information, par Jerôme Valloire, publié le 05/05/12 et vu le 14/12/2014
Présentations Dion Hinchcliffe: Web-Oriented Architecture, Qcon 2009 – London Emiliano Pecis: Web Oriented Architecture at Oracle, 2008
15
Sources