Un evento se define como un cambio significativo en un estado. Hay tres estilos de procesamiento de eventos: procesamiento simple, por flujo y complejo. La arquitectura dirigida por eventos promueve la producción, detección y reacción a eventos. En un modelo de publicación y suscripción hay publicadores que publican mensajes y suscriptores que se suscriben a eventos.
1. Equipo 5
América Libertad García Alarcón
Miguel Ángel Merino Martínez
David Lucas Bautista
Daniel López Rosas
2. 4.3 Conceptos básicos de eventos.
• Un evento puede ser definido como "un cambio significativo en un estado“.
Estructura del evento:
• Encabezado evento.
• Cuerpo evento.
3. Capas del flujo del evento:
• Generador de evento.
• Canal de evento.
• Motor de procesamiento del evento.
• Actividad de descarga dirigida por evento.
4. Estilos de procesamiento de evento.
Hay tres estilos generales de procesamiento de eventos:
• Procesamiento simple de evento.
• Procesamiento por flujo de evento.
• Procesamiento complejo de evento.
5. Arquitectura dirigida por eventos
• La Arquitectura dirigida por eventos o EDA, es un patrón de arquitectura de
software que promueve la producción, detección, consumo de, y reacción a
eventos. Las arquitecturas basadas en eventos se han llamado también de
invocación implícita.
• Las arquitecturas basadas en eventos se vinculan históricamente con sistemas
basados en actores, daemons y redes de conmutación de paquetes (publicación-
suscripción).
6. La idea dominante en la invocación implícita es que, en lugar de invocar un
procedimiento en forma directa (como se haría en un estilo orientado a objetos)
un componente puede anunciar mediante difusión uno o más eventos. Un
componente de un sistema puede anunciar su interés en un evento determinado
asociando un procedimiento con la manifestación de dicho evento.
Un caso clásico en ambientes Microsoft sería el Servicio de Notificación de SQL
Server. Cuando el evento se anuncia, el sistema invoca todos los procedimientos
que se han registrado para él. De este modo, el anuncio de un evento
implícitamente ocasiona la invocación de determinados procedimientos en otros
módulos.
7. Ejemplo:
• Función en JS que cambia de letras minúsculas a mayúsculas, de un campo en
un formulario en HTML.
8. Ventajas y Desventajas:
Ventajas:
• 1. Simplicidad
• 2. Evolución: se pueden reemplazar componentes suscriptores.
• 3. Modularidad: una sola modalidad para eventos diversos.
• 4. Puede mejorar la eficiencia, eliminando la necesidad de polling por ocurrencia de
evento.
9. Desventajas:
• 1. Posibilidad de desborde.
• 2. Potencial imprevisión de escalabilidad.
• 3. Pobre comprensibilidad: Puede ser difícil prever qué pasará en respuesta a
una acción.
• 4. No hay garantía del lado del publicador, que el suscriptor responderá al
evento.
• 5. No hay mucho soporte de recuperación en caso de falla parcial.
10. 4.4 Modelo arquitectónico (Enfoque,
publicación y suscripción).
En un modelo de publicación y suscripción, hay tres componentes:
• Publicadores:
• Puertos de recepción que publican los mensajes que llegan a sus ubicaciones de recepción.
• Orquestaciones que publican mensajes cuando envían mensajes o inician otra orquestación en modo asincrónico.
• Puertos de envío de solicitud-respuesta que publican mensajes cuando reciben una respuesta de la aplicación de destino.
• Suscriptores:
• Suscripción de activación.
• Suscripción de instancia.
• Eventos.