Les architectures de services : SOA vs WOA

Après cette présentation de SOA et WOA, dans les deux précédents articles, la grande question est : Quand doit-on choisir l’un ou l’autre ?

Les deux approches, SOA et WOA, sont envisageables pour la mise en œuvre d’une architecture de services, et présentes toute deux des points forts mais également des points faibles et possèdent en fin de compte une utilisabilité propre à des environnements différents.

Tout d’abord, pour bien comprendre les avantages et inconvénients présentés plus bas voici un exemple d’appel à un webservice qui expose une méthode d’addition :

REST

Requête : GET https://mondomaine.com/sum?a=2&b=2

Réponse : 4

Documentation : La ressource « sum» est la somme de deux paramètres
a et b.

SOAP

Requête :

requete - Les architectures de services : SOA vs WOA

La réponse :

reponse - Les architectures de services : SOA vs WOA

La documentation au format wsdl :

doc - Les architectures de services : SOA vs WOA

Comparons maintenant les deux approches.

Les avantages de REST

  • Simplicité d’utilisation et de développement.
  • Opérations CRUD « native ».
  • Consommable par tous supports puisque basé sur HTTP.
  • Souplesse.

Les avantages de SOAP

  • Sécurité et fiabilité du protocole.
  • Contrats formels et rigide entre le client et le serveur.
  • Opérations avec état : partage de transaction possible.
  • Possibilité de communiquer avec un autre protocole que HTTP (TCP/IP).

De façon synthétique, REST propose une mise en œuvre simple de développement et d’utilisation, basé sur des standards connus de tous. SOAP en revanche sera utile si les contraintes de sécurité sont importantes et que le contrat entre client et services doit être absolu et strict. En 2018 la part des entreprises qui utilisent des Web API REST est de plus en plus importante.

Dans les deux cas, l’utilisation du framework .Net et du langage C# est adapté à ce besoin d’écriture de service. Le type de projet sera en revanche bien différent suivant votre choix, j’y reviendrais dans un prochain article.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.