¿Qué es SOA? Orientado a servicios ArchiPrincipios de tecnología

¿Qué es SOA (Orientado a Servicios)? Archi¿Tectura)?

Una Orientación al Servicio Architecnología (SOA) es un archiPatrón estructural en el diseño de software de computadora en el que los componentes de la aplicación brindan servicios a otros componentes a través de un protocolo de comunicaciones, generalmente a través de una red. Los principios de la orientación a servicios son independientes de cualquier producto, proveedor o tecnología.

SOA simplemente facilita que los componentes de software de varias redes funcionen entre sí.

Servicios web creados según SOA. archiLa tecnología tiende a hacer que el servicio web sea más independiente. Los propios servicios web pueden intercambiar datos entre sí y, debido a los principios subyacentes sobre los que se crean, no necesitan ningún tipo de interacción humana y tampoco necesitan modificaciones de código. Garantiza que los servicios web de una red puedan interactuar entre sí sin problemas.

Orientado a servicios ArchiPrincipios de tecnología (SOA)

Hay 9 tipos de principios de diseño SOA que se mencionan a continuación.

1. Contrato de servicio estandarizado

Los servicios se adhieren a una descripción del servicio. Un servicio debe tener algún tipo de descripción que describa de qué se trata el servicio. Esto facilita que las aplicaciones cliente comprendan qué hace el servicio.

2. Acoplamiento flojo

Menos dependencia unos de otros. Esta es una de las principales características de los servicios web que simplemente establece que debe haber la menor dependencia posible entre los servicios web y el cliente que invoca el servicio web. Por lo tanto, si la funcionalidad del servicio cambia en cualquier momento, no debería interrumpir la aplicación cliente ni impedir que funcione.

3. Abstracción de servicios

Los servicios ocultan la lógica que encapsulan del mundo exterior. El servicio no debe exponer cómo ejecuta su funcionalidad; simplemente debería decirle a la aplicación cliente qué hace y no cómo lo hace.

4. Reutilización del servicio

La lógica se divide en servicios con la intención de maximizar la reutilización. En cualquier empresa de desarrollo, la reutilización es un tema importante porque, obviamente, uno no querría perder tiempo y esfuerzo creando el mismo código una y otra vez en múltiples aplicaciones que lo requieran. Por lo tanto, una vez escrito el código de un servicio web, debería poder funcionar con varios tipos de aplicaciones.

5. Autonomía del servicio

Los servicios deberían tener control sobre la lógica que encapsulan. El servicio sabe todo sobre las funciones que ofrece y, por lo tanto, también debe tener control total sobre el código que contiene.

6. Servicio de apatridia

Idealmente, los servicios deberían ser apátridas. Esto significa que los servicios no deben retener información de un estado a otro. Esto debería hacerse desde la aplicación cliente. Un ejemplo puede ser un pedido realizado en un sitio de compras. Ahora puedes tener un servicio web que te da el precio de un artículo en particular. Pero si los artículos se agregan a un carrito de compras y la página web navega a la página donde realiza el pago, la responsabilidad del precio del artículo a transferir a la página de pago no debe ser responsabilidad del servicio web. En cambio, debe hacerlo la aplicación web.

7. Descubrimiento del servicio

Los servicios se pueden descubrir (normalmente en un registro de servicios). Ya hemos visto esto en el concepto de UDDI, que realiza un registro que puede contener información sobre el servicio web.

8. Composibilidad del servicio

Los servicios dividen los grandes problemas en pequeños problemas. Nunca se deben integrar todas las funciones de una aplicación en un solo servicio, sino dividir el servicio en módulos, cada uno con una funcionalidad empresarial independiente.

9. Interoperabilidad de servicios

Los servicios deben utilizar estándares que permitan a diversos suscriptores utilizar el servicio. En servicios web, estándares como XML y la comunicación a través de HTTP se utiliza para garantizar que se ajuste a este principio.