SOA vs servicios web
Los servicios web se utilizan para crear aplicaciones que pueden enviar / recibir mensajes utilizando SOAP a través de HTTP. Un servicio web es un paquete publicitado de funcionalidad que se ofrece a través de la web. SOA es un conjunto de conceptos arquitectónicos utilizados para el desarrollo e integración de servicios. Los servicios web se pueden utilizar para implementar SOA. Pero es solo un método único de realizar aplicaciones basadas en SOA..
¿Qué son los servicios web??
Un servicio web es un método de comunicación a través de la red. De acuerdo con W3C, un servicio web es un sistema dedicado para soportar transacciones de máquina a máquina a través de una red. Es una API web descrita en WSDL (Lenguaje de descripción de servicios web), y los servicios web suelen ser autocontenidos y autodescriptivos. Los servicios web se pueden descubrir mediante el protocolo UDDI (Descripción Universal, Descubrimiento e Integración). Al intercambiar mensajes SOAP (Protocolo de acceso a objetos simples) generalmente a través de HTTP (con XML), otros sistemas pueden interactuar con los servicios web.
Los servicios web se utilizan de varias maneras, como RPC (llamadas a procedimientos remotos), SOA (arquitectura orientada a servicios) y REST (transferencia de estado representativa). Existen dos metodologías de diseño automatizado para el desarrollo de servicios web. El enfoque de abajo hacia arriba trata primero creando las clases y luego utilizando las herramientas de generación WSDL para componer estas clases como servicios web. El enfoque de arriba hacia abajo trata de definir las especificaciones WSDL y luego usar las herramientas de generación de código para generar las clases correspondientes. Los servicios web tienen dos usos principales. Se pueden usar como componentes de aplicaciones reutilizables y / o para conectar aplicaciones web que se ejecutan en diferentes plataformas..
Que es SOA?
SOA (Arquitectura orientada a servicios) es un conjunto de conceptos arquitectónicos utilizados para el desarrollo e integración de servicios. SOA se ocupa de la computación distribuida, en la que los consumidores consumen un conjunto de servicios interoperables. Múltiples consumidores pueden consumir un solo servicio y viceversa. Por lo tanto, SOA se usa a menudo para integrar múltiples aplicaciones que usan diferentes plataformas. Para que SOA funcione correctamente, los servicios deben estar acoplados de manera flexible con los sistemas operativos y las tecnologías de las aplicaciones subyacentes. Los desarrolladores de SOA crean servicios utilizando unidades de funcionalidad y los ponen a disposición a través de Internet. Los servicios web se pueden utilizar para implementar la arquitectura SOA. En ese caso, los servicios web se convierten en unidades de funcionalidad de SOA accesibles a través de Internet. Los servicios web pueden ser utilizados por cualquier persona sin preocuparse por las plataformas o los lenguajes de programación utilizados para desarrollarlos. SOA se basa directamente en el principio de orientación al servicio, que habla de servicios con una interfaz simple a la que los usuarios pueden acceder de forma independiente sin preocuparse por la implementación real de la plataforma en el servicio.
¿Cuál es la diferencia entre SOA y servicios web??
Existen algunas diferencias clave entre los servicios web y SOA. Los servicios web definen una tecnología web que se puede usar para crear aplicaciones que pueden enviar / recibir mensajes utilizando SOPA a través de HTTP. Sin embargo, SOA es un modelo arquitectónico para implementar aplicaciones basadas en servicios de acoplamiento flexible. Los servicios web se pueden utilizar para implementar aplicaciones SOA. A pesar de que el enfoque del servicio web a SOA se ha vuelto muy popular, es solo un método único de implementación de SOA. SOA se puede implementar utilizando cualquier otra tecnología basada en servicios (por ejemplo, CORBA y REST).