Your SlideShare is downloading. ×

Osb turismo 25nov Palma

392

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
392
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
8
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. <Insert Picture Here> Mediación de Servicios con Oracle Service Bus Enrique Martín 25 de Noviembre 2010
  • 2. <Insert Picture Here> Agenda • Hace un año decíamos …. • Oracle Service Bus • Que hemos hecho (y aprendido) en este año
  • 3. Actores del Sector
  • 4. Actores del Sector
  • 5. Actores del Sector
  • 6. Conexiones punto a punto, cercanas:
  • 7. Conexiones punto a punto, a distancia:
  • 8. Varias conexiones:
  • 9. Muchas más conexiones:
  • 10. Una base común:
  • 11. Una base común con múltiples ingredientes:
  • 12. Una Base para toda la empresa
  • 13. Simplificando la Interoperabilidad Reglas de Negocio Transformación de formatosReglas de Negocio Transformación de formatos Correspondencias MonitorizaciónValidaciones lógicas
  • 14. Clientes http://www.youtube.com/watch?v=NNoozewXql4
  • 15. Mediación de Servicios con OSB Application Service Service System Loan Gateway 3 (Proxy Service) ESB Application Service Service System Loan Gateway 3 (Proxy Service) Application Service Service System Loan Processing Service (Business Service) Application Service Service System ESB Loan Processing Service (Business Service)
  • 16. Mediación de Servicios con OSB Application Service Service System Loan Gateway 3 (Proxy Service) Vista de arquitectura Vista de configuración del pipeline Proxy Pipeline Application Service Service System ESB Loan Processing Service (Business Service) Business Service
  • 17. Monitorización Alarmas Servicio publicado en el bus Flujo Petición Cambio: • Mensaje •Protocolo •Seguridad Flujo Respuesta Mediación de Servicios con OSB Alarmas Reportes Cuadros de Mando Enriquecimiento del servicio •Seguridad Alarmas Excepciones Enrutado/Publicación
  • 18. Gestión de Servicios • Cuadros de mando • Métricas de rendimiento y errores • Estado de servidores (cluster) • Monitorización • Por instancia o por cluster • Gestión alertas SLA • Alertas en métricas • Alertas por enrutado de mensajes ReportingSLAsMonitoringDashboard Open Interfaces Management • Alertas por enrutado de mensajes • Reporting • Out of the box • Personalizados • Interfases abiertos • Personalización del despliegue • JMX • SNMP
  • 19. Gestión del Ciclo de Vida • Protege la Integridad Semántica • Gestiona la dependencia de recursos • Change Center • Agregación de Configuraciones • Rollback • Auditoria de Cambios Permite … Así que se puede … Maneja la entrega y las operaciones asociadas en servicios integrados SOA. Gestionar la complejidad de la integración de servicios en un entorno SOA. • Rollback • Auditoria de Cambios • Soporte Sesiones Simultáneas • Reporte y Auditoria para la monitorización de la actividad • Vistas operacionales basada en roles
  • 20. Creación de Servicios con ESB ESB Application Service Service System Vista de arquitectura Interfaz SOAP Loan Gateway 3 (Proxy Service) Application Service Service System Interfaz SOAP 2 Application Service Service System Otros Interfases (mail, FTP. MOM) Application Service Service System Loan Processing Service (Business Service) Distintas fachadas para el mismo servicio de Negocio Los servicios pueden enriquecerse
  • 21. Protección de sobrecarga para los servicios de negocio Clients Service Clients Throttle requests w/ Policy Proxy Service Legacy Service 1 Queue buffer size Bus Svc OSB Cluster size Regulando las entrada de solicitudes al servicio mediante políticas Evita la sobrecarga de los servicios de negocio
  • 22. Patrones Avanzados ”Split and Join” para paralelización de tareas • Un invocación se divide en múltiples llamadas en paralelo • Las respuestas se agregan en un solo mensaje • La ejecución de acciones en paralelo mejora el rendimiento Split ForEach ProcessOrder Oracle Service Bus Join ProcessOrder 15 Order 1 Order 2 Order 3 SPLIT Response 1 Response 2 Response 3 JOIN Request Payload Response Payload
  • 23. OSB y Cache de Datos Legacy Service Service ProviderOracleServiceBus Si el resultado no esta en cache, se invoca al servicio y se carga en cache el resultado Side Cache Pattern Process Flow / Orchestration Service Consumer P BBackup Node Primary NodeGet / Put (Cachekey) Service Data Coherence Data Grid OSB Result Cache OracleServiceBus Check cache
  • 24. ¿Qué es Coherence? • Un cache distribuido de datos con características de alta escalabilidad y tolerancia a fallos • Cada dato tiene una copia maestra y una de back-up • Los datos almacenados son objetos Java • El acceso es desde clientes Java, .Net o 24 • El acceso es desde clientes Java, .Net o C++ • La escalabilidad se consigue mediante despliegue en múltiples máquinas (escalado vertical), con múltiples instancias en una única máquina (escalado horizontal), o con una combinación de ambas estrategias
  • 25. Casos de uso en el sector turismo Retos en la operativa de IT en el sector turismo: • Negocio inherentemente distribuido, con proveedores remotos de servicios de hoteles, vuelos, etc… • Requerimientos de alto rendimiento y bajos tiempos de respuesta (‘La competencia está a un click’) • Necesidad de escalar a un volumen muy alto de usuarios y peticiones concurrentes • Necesidad de escalar a un volumen muy alto de usuarios y peticiones concurrentes • Problemática de integraciones complejas y no uniformes con los distintos proveedores de servicios • Complejidad para monitorizar y administrar las interacciones con proveedores remotos, y los procesos de reserva de usuarios
  • 26. Casos de uso Patrones de consulta de disponibilidades con OSB y Coherence Problema • El flujo típico de consulta de disponibilidades implica esto pasos: • Acceso a varios sistemas remotos proveedores de hoteles, aviones, cruceros, etc • Guardar las respuestas parciales en una almacenamiento temporal (a menudo una base de datos) • Hacer procesos de consolidación y ordenación (normalmente por precio) de los datos globales • Implementar una paginación sobre estos resultados, y mostrarla al cliente • Este tipo de consultas genera un alto volumen de escritura en bbdd, ralentiza la ejecución de las aplicaciones, afectando al rendimientoejecución de las aplicaciones, afectando al rendimiento • La complejidad de las queries implicadas hace difícil implementar filtros y reglas de negocio posteriores sobre los resultados Solucion • Utilizar la funcionalidad de split&join (paralelización de ejecución) del OSB con una rama por proveedor • Utilizar Coherence como almacenamiento temporal de resultados. Hacemos las ordenaciones, filtros y paginaciones sobre Coherence • La escritura intensiva en memoria es mucho más rápida que en disco
  • 27. Casos de uso Cacheo de información dinámica de disponibilidad en hoteles y vuelos Problema • Las disponibilidades de hoteles y vuelos se resuelven mediante consultas a proveedores remotos • Alta tasa de cambio en este tipo de información • Modelos de pago por uso en estos servicios Solucion • Cachear subconjuntos relevantes de esta información, evitando el acceso remoto, y refrescando periódicamente. Ejemplos: • Vuelos a ciertos destinos en la siguiente semana, o en ciertas fechas (puente 1 de mayo, semana santa, …) • Disponibilidad hotelera en ciertos destinos/fechas clave (ej. Sevilla en feria abril) • Ahorro en los modelos de pago por uso • Mejora en el tiempo de respuesta • Direccionamiento de Ventas
  • 28. Casos de uso Mejora del rendimiento mediante el cacheo de datos estáticos Problema • Las aplicaciones típicas de turismo incluyen un volumen muy alto de información estática, poco volatil y de uso muy frecuente (datos de compañias hoteleras, aviación, cruceros, códigos de area, ciudad, etc, ficheros de configuracion de aplicaciones, literales de aplicaciones web, y muchos más) • El acceso continuo a esta información estática sobre bases de datos o ficheros afecta negativamente al rendimiento • El acceso continuo a esta información estática sobre bases de datos o ficheros afecta negativamente al rendimiento Solucion • Con la utilización de Coherence como cache distribuido de alta capacidad para estos datos conseguimos: • Mejorar los tiempos de respuesta (acceso a memoria más rápido que a dispositivos basados en disco) • Decremento en la carga de bases de datos y otros sistemas de back-end • Aumento de la capacidad de escalado de los sistemas
  • 29. Conclusiones • Oracle tiene soluciones rápidas de implementar que solucionan problemas de Negocio en el Sector de Turismo: • Flexibilidad y Time-to-Market (Integración) • Calidad de Servicio (Tiempo de respuesta) • Diferenciación y orientación a Ventas (procesamiento de información en Caches) • Oracle tiene experiencia en este tipo de proyectos, y sabe como ayudar al cliente • Pruebas de Concepto • Mentoring
  • 30. Copyright 2007 30

×