Arquitectura Orientada a Servicios (Service-Oriented Architecture, SOA).
Los Servicios Web pueden también ser implementados siguiendo los conceptos de la arquitectura SOA, donde la unidad básica de comunicación es el mensaje, más que la operación. Esto es típicamente referenciado como servicios orientados a mensajes.
Los Servicios Web basados en SOA son soportados por la mayor parte de desarrolladores de software y analistas. Al contrario que los Servicios Web basados en RPC, este estilo es débilmente acoplado, lo cual es preferible ya que se centra en el “contrato” proporcionado por el documento WSDL, más que en los detalles de implementación subyacentes.
Mas adelante se presentará un ejemplo Servicio SOAP utilizado en el Proyecto Condominios implementado por el grupo de trabajo "SOA"
Arquitectura REST (Representation State Transfer)
Concebida por roy fielding quien trabajo mucho en los establecimientos de algunos de los estándares y versiones de HTTP y HTLM cuando comenzó la Web (Inicio de las Web Sites 1992 como se puede ver en el gráfico superior)
La idea de Filelding es Mantener muchos de los estilos arquitectónicos que tiene que ver con el desacoplamiento y mantener interfaces uniformes para algunas cosas que están por arriba de lo que conocemos como web tradicional Tradiciona basado en: HTTP (canal / protocolo de comunicación de bajo nivel) y sobre esto van los esto Artefactos de texto HTML y compartir documentos compartir documentos y características como URL, links y básicamente a pesar de que se tienen varios servicios arriba de la web tradicional, usando script , Ayax, Flash, Silverlight etc, se pueden hacer cosas más sofisticadas pero de fondo la web sigue siendo lo mismo Http.
La arquitectura de software lo que trata de crear estrategias y comunes sobre el manejo de la complejidad. La construcción de software es cada vez más compleja, convivimos entre protocolas y tecnologías y muchas cosas por encima. por tal hay que reducir la complejidad. Hay que usar un Mecanismo de particionamiento del problema de forma sencilla. La solución sigue siendo compleja; pero la solución es repartirla el problema en partes sencillas.
Hay que usar mayor capas de abstracción ejemplo: Inicialmente se trabajo en Lenguaje de máquina, luego Orientación a Objetos, luego Orientación a Servicios y cada vez hay que crear mayores capas de abstracción uniforme tal que la complejidad no sea evidente.
Características básicas de REST y SOAP
Encontré dos frases interesantes sobre la característica de cada servicio a nivel de protocolo como se puede observar en el siguiente gráfico:
REST “La Web es el universo de la información accesible globalmente”
SOAP “La Web es el transporte universal de mensajes”
A nivel de protocolos, las aplicaciones de REST pueden publicar su data en la Web a través de URI, mientras que las aplicaciones en SOAP tienen solo la oportunidad de interactuar pero sobre la Web.
No hay comentarios:
Publicar un comentario