2011-03-11 11 views

risposta

5

Sì, entrambi possono essere considerati approcci per l'implementazione di un SOA. Suppongo che tu possa dire che REST è uno stile, ma allora dovresti dire che SOAP è anche uno. Li considererei semplicemente diverse tecniche per raggiungere lo stesso fine. SOAP riproduce un Remote Procedure Call e REST è in linea con il modo in cui è stato progettato il web (http).

4

Quando si creano/adattano servizi per lavorare in un'architettura SOA, le interfacce esposte possono essere qualsiasi cosa si desideri purché i consumatori abbiano la capacità di elaborare la risposta.

Per fornire una risposta più concisa, interpreterò il REST come un'interfaccia HTTP che può eseguire le operazioni CRUD, forse rispondendo alle richieste con un oggetto XML o JSON.

SOAP tende a prestarsi a operazioni più complesse sul lato del servizio, le librerie e gli XML di SOAP coinvolti introducono complessità nel sistema.

Se tutto ciò che serve è la rappresentazione delle risorse a cui è possibile accedere tramite semplici operazioni CRUD, vale la pena considerare l'implementazione di un'interfaccia REST per ridurre la complessità, anche se il servizio verrà eseguito insieme ai servizi laterali con le interfacce SOAP. Tutto ciò che sarebbe richiesto è che il consumatore del servizio sia in grado di gestire le risposte di stile RESTful e di agire come un cliente SOAP.

Ci sarebbero argomenti per la coerenza tra i servizi per migliorare la manutenibilità e la facilità di sviluppo, ma questa non è una necessità e dovrebbe essere inclusa solo nel processo decisionale.

Quando si include un bus di messaggistica nella progettazione, i servizi eterogenei possono essere gestiti in modo ancora più efficace inserendo trasformazioni standard (XSLT, personalizzate) nel processo in grado di tradurre la risposta dai servizi in un formato standard compreso dal sistema come un'intera.

0

SOAP e REST sono modi di servizi di costruzione.

SOAP è basato su XML e, in teoria, supporta più di un semplice HTTP e ha standard per la definizione di interfaccia (WSDL) e cose come la sicurezza (WS_Security).

REST è uno stile per eseguire servizi Web in modo orientato alle risorse utilizzando un insieme definito di operazioni Web (GET, POST, ecc.), Ma definisce pochissimo altro.

Tuttavia, SOA è molto più di un semplice gruppo di servizi. Scegliere REST o SAPONE è la parte facile.

0

Se si chiede semplicemente se entrambi possono essere implementati utilizzando l'architettura orientata ai servizi - sì, lo fanno. Possono anche essere utilizzati contemporaneamente in un singolo progetto basato su SOA.

Se si sta chiedendo se utilizzare SOAP o REST, non è possibile fornire una risposta se non si forniscono le specifiche del progetto.

Problemi correlati