SOA vs serveis web
Els Els serveis web s'utilitzen per crear aplicacions que poden enviar/rebre missatges mitjançant SOAP per HTTP. Un servei web és un paquet publicitari de funcionalitats que s'ofereix a través del web. SOA és un conjunt de conceptes arquitectònics utilitzats per al desenvolupament i la integració de serveis. Els serveis web es poden utilitzar per implementar SOA. Però només és un mètode únic per realitzar aplicacions basades en SOA.
Què són els serveis web?
Un servei web és un mètode de comunicació a través de la xarxa. Segons el W3C, un servei web és un sistema dedicat a donar suport a transaccions màquina a màquina a través d'una xarxa. És una API web descrita en WSDL (Web Service Description Language), i els serveis web solen ser autònoms i autodescriptius. Els serveis web es poden descobrir mitjançant el protocol UDDI (Descripció universal, descobriment i integració). Mitjançant l'intercanvi de missatges SOAP (Protocol d'accés a objectes simples) normalment per HTTP (amb XML), altres sistemes poden interactuar amb serveis web.
Els Els serveis web s'utilitzen de diverses maneres, com ara RPC (Remote Procedure Calls), SOA (Service Oriented Architecture) i REST (Representational State Transfer). Hi ha dues metodologies de disseny automatitzat per desenvolupar serveis web. L'enfocament de baix a d alt tracta de crear primer les classes i després utilitzar eines de generació WSDL per compondre aquestes classes com a serveis web. L'enfocament de d alt a baix tracta de definir les especificacions WSDL i després utilitzar eines de generació de codi per generar les classes corresponents. Els serveis web tenen dos usos principals. Es poden utilitzar com a components d'aplicacions reutilitzables i/o per connectar aplicacions web que s'executen en diferents plataformes.
Què és SOA?
SOA (Arquitectura orientada a serveis) és un conjunt de conceptes arquitectònics utilitzats per al desenvolupament i la integració de serveis. SOA tracta de la informàtica distribuïda, en la qual els consumidors consumeixen un conjunt de serveis interoperables. Diversos consumidors poden consumir un sol servei i viceversa. Per tant, SOA s'utilitza sovint per integrar múltiples aplicacions que utilitzen diferents plataformes. Perquè SOA funcioni correctament, els serveis s'han d'acoblar lliurement amb els sistemes operatius i les tecnologies de les aplicacions subjacents. Els desenvolupadors de SOA creen serveis utilitzant unitats de funcionalitat i els fan disponibles a Internet. Els serveis web es poden utilitzar per implementar l'arquitectura SOA. En aquest cas, els serveis web esdevenen les unitats de funcionalitat de SOA accessibles a través d'Internet. Els serveis web poden ser utilitzats per qualsevol persona sense preocupar-se per les plataformes o els llenguatges de programació utilitzats per desenvolupar-los. SOA es basa directament en el principi d'orientació al servei, que parla de serveis amb una interfície senzilla a la qual els usuaris poden accedir de manera independent sense preocupar-se per la implementació real de la plataforma del servei.
Quina diferència hi ha entre SOA i els serveis web?
Hi ha algunes diferències clau entre els serveis web i SOA. Els serveis web defineixen una tecnologia web que es pot utilitzar per crear aplicacions que poden enviar/rebre missatges mitjançant SOPA sobre HTTP. Tanmateix, SOA és un model arquitectònic per implementar aplicacions basades en serveis poc acoblades. Els serveis web es poden utilitzar per implementar aplicacions SOA. Tot i que l'enfocament del servei web de SOA s'ha fet molt popular, només és un mètode únic per implementar SOA. La SOA es pot implementar mitjançant qualsevol altra tecnologia basada en serveis (per exemple, CORBA i REST).