SlideShare une entreprise Scribd logo

eServices-Chp6: WOA

Notion de WOA, relation et différence avec SOA

1  sur  15
Télécharger pour lire hors ligne
WOA: Web Oriented Architecture
Chapitre 6 - eServices
GL5
2015/2016
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 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. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 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. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 3
SOA vs Web
Convergence entre Web 2.0 et SOA
Dr. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 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. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 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. Lilia SFAXI
www.liliasfaxi.wix.com/liliasfaxi
Slide 6
REST

Recommandé

eServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementeServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementLilia Sfaxi
 
Introduction aux architectures des SI
Introduction aux architectures des SI Introduction aux architectures des SI
Introduction aux architectures des SI Heithem Abbes
 
Architectures distribuées
Architectures distribuéesArchitectures distribuées
Architectures distribuéesFranck SIMON
 
Cloud computing
Cloud computingCloud computing
Cloud computingmourad50
 
les style d'architecture
les style d'architecture les style d'architecture
les style d'architecture Mouna Maazoun
 

Contenu connexe

Tendances

Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...ENSET, Université Hassan II Casablanca
 
Architectures orientées services
Architectures orientées servicesArchitectures orientées services
Architectures orientées servicesDonia Hammami
 
Tp2 - WS avec JAXRS
Tp2 - WS avec JAXRSTp2 - WS avec JAXRS
Tp2 - WS avec JAXRSLilia Sfaxi
 
Les web services
Les web servicesLes web services
Les web servicesdihiaselma
 
Architecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesArchitecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesENSET, Université Hassan II Casablanca
 
Microservices avec Spring Cloud
Microservices avec Spring CloudMicroservices avec Spring Cloud
Microservices avec Spring CloudFlorian Beaufumé
 
Architecture réparties et les services web
Architecture réparties et les services webArchitecture réparties et les services web
Architecture réparties et les services webCHOUAIB EL HACHIMI
 
Architecture des Systèmes Logiciels
Architecture des Systèmes LogicielsArchitecture des Systèmes Logiciels
Architecture des Systèmes LogicielsGhazouani Mahdi
 
eServices-Tp1: Web Services
eServices-Tp1: Web ServiceseServices-Tp1: Web Services
eServices-Tp1: Web ServicesLilia Sfaxi
 
Chp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées ServicesChp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées ServicesLilia Sfaxi
 
Chp3 - Les Services Web
Chp3 - Les Services WebChp3 - Les Services Web
Chp3 - Les Services WebLilia Sfaxi
 
Chp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOAChp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOALilia Sfaxi
 
Services web soap-el-habib-nfaoui
Services web soap-el-habib-nfaouiServices web soap-el-habib-nfaoui
Services web soap-el-habib-nfaouiEl Habib NFAOUI
 

Tendances (20)

Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...
 
Architectures orientées services
Architectures orientées servicesArchitectures orientées services
Architectures orientées services
 
Tp2 - WS avec JAXRS
Tp2 - WS avec JAXRSTp2 - WS avec JAXRS
Tp2 - WS avec JAXRS
 
Les web services
Les web servicesLes web services
Les web services
 
Architecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependancesArchitecture jee principe de inversion de controle et injection des dependances
Architecture jee principe de inversion de controle et injection des dependances
 
Microservices avec Spring Cloud
Microservices avec Spring CloudMicroservices avec Spring Cloud
Microservices avec Spring Cloud
 
Architecture réparties et les services web
Architecture réparties et les services webArchitecture réparties et les services web
Architecture réparties et les services web
 
Nouveautés de java 8
Nouveautés de java 8Nouveautés de java 8
Nouveautés de java 8
 
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka StreamsTraitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
 
Architecture des Systèmes Logiciels
Architecture des Systèmes LogicielsArchitecture des Systèmes Logiciels
Architecture des Systèmes Logiciels
 
Chp3 - ESB
Chp3 - ESBChp3 - ESB
Chp3 - ESB
 
eServices-Tp1: Web Services
eServices-Tp1: Web ServiceseServices-Tp1: Web Services
eServices-Tp1: Web Services
 
Chp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées ServicesChp2 - Vers les Architectures Orientées Services
Chp2 - Vers les Architectures Orientées Services
 
Chp3 - Les Services Web
Chp3 - Les Services WebChp3 - Les Services Web
Chp3 - Les Services Web
 
Support de cours Spring M.youssfi
Support de cours Spring  M.youssfiSupport de cours Spring  M.youssfi
Support de cours Spring M.youssfi
 
Tp4 - PHP
Tp4 - PHPTp4 - PHP
Tp4 - PHP
 
Support de Cours JSF2 Première partie Intégration avec Spring
Support de Cours JSF2 Première partie Intégration avec SpringSupport de Cours JSF2 Première partie Intégration avec Spring
Support de Cours JSF2 Première partie Intégration avec Spring
 
Chp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOAChp1- Introduction aux Technologies Web et SOA
Chp1- Introduction aux Technologies Web et SOA
 
Services web soap-el-habib-nfaoui
Services web soap-el-habib-nfaouiServices web soap-el-habib-nfaoui
Services web soap-el-habib-nfaoui
 
Java Server Faces 2
Java Server Faces 2Java Server Faces 2
Java Server Faces 2
 

En vedette

eServices-Tp4: esb++
eServices-Tp4: esb++eServices-Tp4: esb++
eServices-Tp4: esb++Lilia Sfaxi
 
eServices-Chp4: ESB
eServices-Chp4: ESBeServices-Chp4: ESB
eServices-Chp4: ESBLilia Sfaxi
 
eServices-Tp5: api management
eServices-Tp5: api managementeServices-Tp5: api management
eServices-Tp5: api managementLilia Sfaxi
 
eServices-Chp3: Composition de Services
eServices-Chp3: Composition de ServiceseServices-Chp3: Composition de Services
eServices-Chp3: Composition de ServicesLilia Sfaxi
 
eServices-Chp1: Introduction
eServices-Chp1: IntroductioneServices-Chp1: Introduction
eServices-Chp1: IntroductionLilia Sfaxi
 
eServices-Chp2: SOA
eServices-Chp2: SOAeServices-Chp2: SOA
eServices-Chp2: SOALilia Sfaxi
 
eServices-Tp2: bpel
eServices-Tp2: bpeleServices-Tp2: bpel
eServices-Tp2: bpelLilia Sfaxi
 
eServices-Tp3: esb
eServices-Tp3: esbeServices-Tp3: esb
eServices-Tp3: esbLilia Sfaxi
 
Getting Started with Real-time Analytics
Getting Started with Real-time AnalyticsGetting Started with Real-time Analytics
Getting Started with Real-time AnalyticsAmazon Web Services
 
Real Time Analytics: Algorithms and Systems
Real Time Analytics: Algorithms and SystemsReal Time Analytics: Algorithms and Systems
Real Time Analytics: Algorithms and SystemsArun Kejariwal
 
Big Data Real Time Applications
Big Data Real Time ApplicationsBig Data Real Time Applications
Big Data Real Time ApplicationsDataWorks Summit
 

En vedette (11)

eServices-Tp4: esb++
eServices-Tp4: esb++eServices-Tp4: esb++
eServices-Tp4: esb++
 
eServices-Chp4: ESB
eServices-Chp4: ESBeServices-Chp4: ESB
eServices-Chp4: ESB
 
eServices-Tp5: api management
eServices-Tp5: api managementeServices-Tp5: api management
eServices-Tp5: api management
 
eServices-Chp3: Composition de Services
eServices-Chp3: Composition de ServiceseServices-Chp3: Composition de Services
eServices-Chp3: Composition de Services
 
eServices-Chp1: Introduction
eServices-Chp1: IntroductioneServices-Chp1: Introduction
eServices-Chp1: Introduction
 
eServices-Chp2: SOA
eServices-Chp2: SOAeServices-Chp2: SOA
eServices-Chp2: SOA
 
eServices-Tp2: bpel
eServices-Tp2: bpeleServices-Tp2: bpel
eServices-Tp2: bpel
 
eServices-Tp3: esb
eServices-Tp3: esbeServices-Tp3: esb
eServices-Tp3: esb
 
Getting Started with Real-time Analytics
Getting Started with Real-time AnalyticsGetting Started with Real-time Analytics
Getting Started with Real-time Analytics
 
Real Time Analytics: Algorithms and Systems
Real Time Analytics: Algorithms and SystemsReal Time Analytics: Algorithms and Systems
Real Time Analytics: Algorithms and Systems
 
Big Data Real Time Applications
Big Data Real Time ApplicationsBig Data Real Time Applications
Big Data Real Time Applications
 

Similaire à eServices-Chp6: WOA

Services web rest_support_cours_nfaoui_el_habib
Services web rest_support_cours_nfaoui_el_habibServices web rest_support_cours_nfaoui_el_habib
Services web rest_support_cours_nfaoui_el_habibEl Habib NFAOUI
 
Introduction à Cloud Foundry et au PaaS
Introduction à Cloud Foundry et au PaaSIntroduction à Cloud Foundry et au PaaS
Introduction à Cloud Foundry et au PaaSGerard Konan
 
Les plateformes de développement des web services
Les plateformes de développement des web servicesLes plateformes de développement des web services
Les plateformes de développement des web servicesoussemos
 
S51 vos projets web services ibm i a l aide de php
S51   vos projets web services ibm i a l aide de phpS51   vos projets web services ibm i a l aide de php
S51 vos projets web services ibm i a l aide de phpGautier DUMAS
 
RII Technologies du Web - convergence des technologies du Web et du Cloud Com...
RII Technologies du Web - convergence des technologies du Web et du Cloud Com...RII Technologies du Web - convergence des technologies du Web et du Cloud Com...
RII Technologies du Web - convergence des technologies du Web et du Cloud Com...philippe_merle
 
0570-les-services-web.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
0570-les-services-web.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb0570-les-services-web.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
0570-les-services-web.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbhindguendouz2000
 
De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)Restlet
 
Web 2.0 Wikipedia 2000
Web 2.0 Wikipedia 2000Web 2.0 Wikipedia 2000
Web 2.0 Wikipedia 2000Formationcsc
 
soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnsoapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnHINDGUENDOUZ
 
Chap1 p1-introduction
Chap1 p1-introductionChap1 p1-introduction
Chap1 p1-introductionMoez Re
 
DevoxxFR Présentation des portails en 2014
DevoxxFR Présentation des portails en 2014DevoxxFR Présentation des portails en 2014
DevoxxFR Présentation des portails en 2014Stéphane Liétard
 
Investir sur son API web (in French)
Investir sur son API web (in French)Investir sur son API web (in French)
Investir sur son API web (in French)Restlet
 
2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_servicesCamus LANMADOUCELO
 
De l'open source à l'open API avec Restlet
De l'open source à l'open API avec RestletDe l'open source à l'open API avec Restlet
De l'open source à l'open API avec RestletJerome Louvel
 
Cours services web_fabrice_mourlin
Cours services web_fabrice_mourlinCours services web_fabrice_mourlin
Cours services web_fabrice_mourlinangeeLee
 
Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017Gerard Konan
 
Innover par et pour la donnée - Logilab ADBU Bibcamp 2015
Innover par et pour la donnée - Logilab ADBU Bibcamp 2015Innover par et pour la donnée - Logilab ADBU Bibcamp 2015
Innover par et pour la donnée - Logilab ADBU Bibcamp 2015Logilab
 

Similaire à eServices-Chp6: WOA (20)

Web services SOAP et REST
Web services  SOAP et RESTWeb services  SOAP et REST
Web services SOAP et REST
 
Services web rest_support_cours_nfaoui_el_habib
Services web rest_support_cours_nfaoui_el_habibServices web rest_support_cours_nfaoui_el_habib
Services web rest_support_cours_nfaoui_el_habib
 
Soap
SoapSoap
Soap
 
Introduction à Cloud Foundry et au PaaS
Introduction à Cloud Foundry et au PaaSIntroduction à Cloud Foundry et au PaaS
Introduction à Cloud Foundry et au PaaS
 
Les plateformes de développement des web services
Les plateformes de développement des web servicesLes plateformes de développement des web services
Les plateformes de développement des web services
 
S51 vos projets web services ibm i a l aide de php
S51   vos projets web services ibm i a l aide de phpS51   vos projets web services ibm i a l aide de php
S51 vos projets web services ibm i a l aide de php
 
RII Technologies du Web - convergence des technologies du Web et du Cloud Com...
RII Technologies du Web - convergence des technologies du Web et du Cloud Com...RII Technologies du Web - convergence des technologies du Web et du Cloud Com...
RII Technologies du Web - convergence des technologies du Web et du Cloud Com...
 
0570-les-services-web.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
0570-les-services-web.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb0570-les-services-web.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
0570-les-services-web.pdfbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
 
De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)
 
Web 2.0 Wikipedia 2000
Web 2.0 Wikipedia 2000Web 2.0 Wikipedia 2000
Web 2.0 Wikipedia 2000
 
soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnsoapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
soapC1.pdfnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
 
Chap1 p1-introduction
Chap1 p1-introductionChap1 p1-introduction
Chap1 p1-introduction
 
DevoxxFR Présentation des portails en 2014
DevoxxFR Présentation des portails en 2014DevoxxFR Présentation des portails en 2014
DevoxxFR Présentation des portails en 2014
 
Investir sur son API web (in French)
Investir sur son API web (in French)Investir sur son API web (in French)
Investir sur son API web (in French)
 
2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services2 20 presentations_generales_des_web_services
2 20 presentations_generales_des_web_services
 
De l'open source à l'open API avec Restlet
De l'open source à l'open API avec RestletDe l'open source à l'open API avec Restlet
De l'open source à l'open API avec Restlet
 
Cours services web_fabrice_mourlin
Cours services web_fabrice_mourlinCours services web_fabrice_mourlin
Cours services web_fabrice_mourlin
 
Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017Introduction à Cloud Foundry Journée du Code 2017
Introduction à Cloud Foundry Journée du Code 2017
 
Innover par et pour la donnée - Logilab ADBU Bibcamp 2015
Innover par et pour la donnée - Logilab ADBU Bibcamp 2015Innover par et pour la donnée - Logilab ADBU Bibcamp 2015
Innover par et pour la donnée - Logilab ADBU Bibcamp 2015
 
Présentation SOA
Présentation SOAPrésentation SOA
Présentation SOA
 

Plus de Lilia Sfaxi

chp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdfchp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdfLilia Sfaxi
 
Plan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdfPlan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdfLilia Sfaxi
 
Lab1-DB-Cassandra
Lab1-DB-CassandraLab1-DB-Cassandra
Lab1-DB-CassandraLilia Sfaxi
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-CorrectionLilia Sfaxi
 
TP1-UML-Correction
TP1-UML-CorrectionTP1-UML-Correction
TP1-UML-CorrectionLilia Sfaxi
 
TP0-UML-Correction
TP0-UML-CorrectionTP0-UML-Correction
TP0-UML-CorrectionLilia Sfaxi
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-CorrectionLilia Sfaxi
 
TD3-UML-Séquences
TD3-UML-SéquencesTD3-UML-Séquences
TD3-UML-SéquencesLilia Sfaxi
 
TD3-UML-Correction
TD3-UML-CorrectionTD3-UML-Correction
TD3-UML-CorrectionLilia Sfaxi
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - CorrectionLilia Sfaxi
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correctionLilia Sfaxi
 
Android - Tp1 - installation et démarrage
Android - Tp1 -   installation et démarrageAndroid - Tp1 -   installation et démarrage
Android - Tp1 - installation et démarrageLilia Sfaxi
 
Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques Lilia Sfaxi
 
Android - Tp3 - intents
Android - Tp3 -  intentsAndroid - Tp3 -  intents
Android - Tp3 - intentsLilia Sfaxi
 
Android - TPBonus - web services
Android - TPBonus - web servicesAndroid - TPBonus - web services
Android - TPBonus - web servicesLilia Sfaxi
 

Plus de Lilia Sfaxi (20)

chp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdfchp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdf
 
Plan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdfPlan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdf
 
Lab3-DB_Neo4j
Lab3-DB_Neo4jLab3-DB_Neo4j
Lab3-DB_Neo4j
 
Lab2-DB-Mongodb
Lab2-DB-MongodbLab2-DB-Mongodb
Lab2-DB-Mongodb
 
Lab1-DB-Cassandra
Lab1-DB-CassandraLab1-DB-Cassandra
Lab1-DB-Cassandra
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-Correction
 
TP1-UML-Correction
TP1-UML-CorrectionTP1-UML-Correction
TP1-UML-Correction
 
TP0-UML-Correction
TP0-UML-CorrectionTP0-UML-Correction
TP0-UML-Correction
 
TD4-UML
TD4-UMLTD4-UML
TD4-UML
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-Correction
 
TD3-UML-Séquences
TD3-UML-SéquencesTD3-UML-Séquences
TD3-UML-Séquences
 
TD3-UML-Correction
TD3-UML-CorrectionTD3-UML-Correction
TD3-UML-Correction
 
TD2-UML-Classes
TD2-UML-ClassesTD2-UML-Classes
TD2-UML-Classes
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
 
TD1 - UML - DCU
TD1 - UML - DCUTD1 - UML - DCU
TD1 - UML - DCU
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correction
 
Android - Tp1 - installation et démarrage
Android - Tp1 -   installation et démarrageAndroid - Tp1 -   installation et démarrage
Android - Tp1 - installation et démarrage
 
Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques
 
Android - Tp3 - intents
Android - Tp3 -  intentsAndroid - Tp3 -  intents
Android - Tp3 - intents
 
Android - TPBonus - web services
Android - TPBonus - web servicesAndroid - TPBonus - web services
Android - TPBonus - web services
 

eServices-Chp6: WOA

  • 1. WOA: Web Oriented Architecture Chapitre 6 - eServices GL5 2015/2016 Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 1
  • 2. 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. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 2 SOA vs Web
  • 3. 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. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 3 SOA vs Web
  • 4. Convergence entre Web 2.0 et SOA Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 4 SOA vs Web
  • 5. 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. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 5 REST
  • 6. 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. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 6 REST
  • 7. 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. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 7 REST
  • 8. 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. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 8 WOA
  • 9. 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. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 9 WOA
  • 10. WOA: SOA + Web 2.0 Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 10 WOA
  • 11. La pile WOA Dr. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 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    
  • 12. 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. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 12 WOA
  • 13. … 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. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 13 WOA
  • 14. À 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. Lilia SFAXI www.liliasfaxi.wix.com/liliasfaxi Slide 14 WOA
  • 15. 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