1 / 16

Arquitecturas orientadas a servicios Introducción a SOA

Arquitecturas orientadas a servicios Introducción a SOA. Los Orígenes de SOA.

mai
Download Presentation

Arquitecturas orientadas a servicios Introducción a SOA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Arquitecturas orientadas a serviciosIntroducción a SOA

  2. Los Orígenes de SOA • La arquitectura de SOA es una respuesta directa a las necesidades de las áreas de negocios que desean disponer de más flexibilidad en los sistemas de la empresa para poder modificar más rápidamente los procesos como consecuencia de peligros u oportunidades que surgen en el entorno • SOA está basado en tecnologías desarrolladas inicialmente para realizar operaciones B2B (Business to Business) pero que se han revelado muy útiles dentro de la intranet

  3. Arquitectura Orientada a Servicios (SOA) • En lugar de crear aplicaciones enormes y muy complejas se desarrollan componentes reutilizables que son fáciles de mantener y probar • Las aplicaciones se crean diseñando un proceso que interactúa con esos componentes • Para cada nueva aplicación se reutilizan los componentes existentes y solo se desarrollan los que aún no existen • Los componentes se conocen como servicios

  4. Definiciones • Servicio • Bloque con cierta funcionalidad • Permite dividir y organizar funcionalidades • Basado en separación de interfaz e implementación • Abstracción de la complejidad • Servicio = objeto? • No, hay diferencias muy importantes

  5. Definiciones • Objeto • Atado a un lenguaje de programación y a una plataforma • Creado para uso local • Servicio • Independiente de la plataforma • Orientado a comunicación entre diferentes aplicaciones, generalmente de forma remota

  6. ¿Qué es un servicio? • Un servicio representa una función de negocios claramente definida que puede ser invocada remotamente mediante protocolos de comunicación estándar • Los servicios se definen mediante interfaces explícitos que son totalmente independientes de la implementación del servicio • Los servicios deben poder ser invocados utilizando protocolos de comunicación estándar que enfatizan la interoperabilidad e independencia de ubicación

  7. Definiciones • Orientación a servicios • Ve toda funcionalidad como un servicio • Promueve la publicación y consumo de servicios para cumplir tareas concretas • Estos servicios deben • Estar basados en esquemas, no en tipos • Estar definidos formalmente, a través de un contrato • Ser autónomos • Poder ser descubiertos

  8. ¿Cómo se desarrolla un servicio? • Los servicios se pueden desarrollar en diversos lenguajes de programación (Java, C/C++, C#, Cobol, Perl, etc.) • Esto es muy práctico para modernizar sistemas legados • Sin embargo, para servicios nuevos es aconsejable utilizar un lenguaje que permita instalar el servicio fácilmente en un cluster de servidores para ofrecer escalabilidad y alta disponibilidad • Para desarrollar componentes, al igual que cualquier otro sistema es bueno adoptar una metodología de desarrollo aceptada

  9. Service Oriented Architecture • La adopción de una arquitectura basada en servicios requiere de una infraestructura de comunicaciones escalable y segura entre los componentes. Esto es lo que se conoce como Enterprise Service Bus.

  10. El Bus de Servicios Empresariales (ESB) • El Bus de Servicios Empresariales es el concepto que se refiere a la infraestructura de transporte de mensajes entre el motor de procesos y los servicios de los que dispone la empresa • El bus requiere una infraestructura sólida que ofrezca a los desarrolladores la seguridad de que los mensajes sean entregados siempre, independientemente de los problemas que puedan afectar a un servicio determinado en un momento dado. • El bus debe ofrecer seguridad total y conectividad hacia todo el software de infraestructura de la empresa • El bus debe ser totalmente monitoreable porque se convierte en la columna vertebral de todos los sistemas de la empresa

  11. Definiciones • Arquitectura orientada a servicios • Orquestación de proveedores y consumidores de servicios para la creación de procesos de negocio • Algunos proveedores de servicios pueden ser consumidores de servicios, a los que añaden funcionalidad extra o específica

  12. IU IU IU NEGOCIOS NEGOCIOS SISTEMA SISTEMA DATOS DATOS DATOS ADAPTADOR IU SISTEMA NEGOCIOS Implementación Aplicaciones legacy XML BIZTALK XML XML BUS DE MENSAJES XML XML

  13. Implementación • Requerimientos • Orientación a servicios • Descubrimiento • Seguridad • Transacciones • Fiabilidad

  14. Implementación con .NET • Orientación a servicios • Implementar nuevas aplicaciones en capas • Evitar usar servicios entre capas • Crear “wrappers” para exponer componentes COM y COM+ como .NET • Exponer servicios .NET a través de ASMX • Utilizar BizTalk si es necesario

  15. Implementación con .NET • Descubrimiento • Utilizar UDDI • Permite mayor versatilidad • Desarrollo estático, implementación dinámica

  16. Implementación con .NET • WSE 2.0 aporta otros elementos • Seguridad • Routing de mensajes • Usar sólo lo estrictamente necesario • Transacciones • Utilizar Serviced Components • Fiabilidad • Utilizar System.Messaging

More Related