FANDOM



Arquitectura Orientada a Recursos (AOR)Editar

Servicios

El concepto de servicio fue creado para tratar de hacer hincapié en las loose couplings y en las relaciones cliente-servidor. El software anterior a la Web estaba normalmente atado al hardware y asociado a plataformas. La Web, siendo tan abierta y ubicua, no puede permitirse hacer eso. La Web fue creada para compartir, sin tales restricciones. De ahí vino el concepto de servicio. Un servicio es una función con un objetivo, sirve a todos los clientes sin ninguna restricción en sus detalles de implementación.

Arquitectura Orientada a Servicios (AOS, SOA en inglés).

Arquitectura Orientada a los Servicios. Estos servicios se comunicaban unos con los otros, algunos colaboraban y otros trabajaban autónomamente.

Para ser capaces de establecer una etapa de entendimiento, los clientes tenían que obedecer los protocolos mencionados en el servicio. Los más populares eranXML-RPC y SOAP. Se centraban en abstraer la Web para aplicaciones y dominios. Un acercamiento distinto fue lleado a cabo con REST, que se centraba en usar la Web tal y como es, siguiendo sus principios básicos.

La ventaja de la AOS era que ahora los negocios podían escoger entre distintos servicios sin ser entorpecidos por la tecnología o por límites organizacionales. Ni las definiciones ni las especificaciones de las AOS estaban limitadas por la Web o dependían de ella. La AOS podría permitir interesantes mezclas e integraciones. El Software como un Servicio (Sofware As A Service, SaaS está completamente basado en esto y ha sido capaz de introducir el concepto de “subcontratación análogica” (analogical outsourcing) a la empresa.

De todas maneras hay algunas desventajas clave en esta aproximación. La mayor está en el esfuerzo para ser una plataforma agnóstica y portable, hundiendo a las AOS bajo una capa de especificaciones. Incrementalmente se hace difícil y costoso el ser capaz de cumplir con los protocolos y hablar con un servicio. Otra desventaja, que no tiene por qué ser grave a veces, es que los servicios no son descubribles. El conocimiento de los servicios es necesario para poder usar el servicio que proporciona un directorio de servicios. Dado que la Web es ilimitada por naturaleza, es imposible mantener tal directorio. Esto hace los SOA menos accesibles.

Arquitectura Orientada a la Web

Para hacer la AOS más ligera y más popular llegó la AOW. Básicamente es un subconjunto de AOS que recomienda REST antes que homólogos más pesados como SOAP. La filosofía de REST es diferenciar entre la programación en red y la programación de escritorio, haciendo más simple su uso con lo anterior.

AOW es mas personalizable para la Web al incluir REST. Y especializándolo puede deshacerse de las pesadas abstracciones que lo hace incluir todo.

Arquitectura Orientada a Recursos (AOR)

Éste es un acercamiento radical, desde el punto de vista de la AOS. Alex Bunardzic introdujo la AOR. Mientras que la AOW es conceptualmente suave, laAOR es una rebelde con causa. Alex señala que el concepto de servicios no debería ser aplicado a la Web. Como se menciona antes, los servicios no pueden ser descubiertos y es imposible mantener un catálogo. Aquí es donde va en contra de la Web, la AOR cree que la Web es explorativa por naturaleza.

Por la unicidad de la Web como medio, la única abstracción que le hace justicia es el recurso. La Web es una colección de recursos. Estos recursos son astronómicamente diversos, y sería matemáticamente imposible mantener una apariencia de un inventario razonable de los recursos de la Web.

Cada recurso en la Web, no importa cúan único o complicado sea, obedece un protocolo. Este protocolo tiene tres aspectos resaltables, éstos son:

  1. Cada recurso conoce cómo se representa a sí mismo al consumidor.
  2. Cada recurso sabe cómo hacer una transición de un estado a otro
  3. Cada recurso sabe como autodestruirse.

La AOR es mas un paradigma que un acercamiento de arquitectura, que considera que los recursos son elementos de la Web. La parte clave, de todas formas, es que pueden ser descubiertos, y una vez que son descubiertos pueden representarse a sí mismos. No hay un requerimiento de conocimiento previo del recurso para establecer una conversación, al contario que las habilidades cognitivas de un servicio en la AOS. La AOR está completamente basada en REST y aprovecha sus ventajas – simplicidad, conocimientos técnicos mínimos y URI para cada recurso. El uso de elementos básicos de la WWWoriginal hace que sea fácil que dos recursos se comuniquen.

La única desventaja que le veo a la AOR es que está bien definido para la Web. Aunque puede haber implementaciones análogas en otras áreas, así como AOSno está conceptualizada en plataformas no-Web. Hay nuevos desarrollos apareciendo en esta área, pero aún no está tan maduro como la AOS.