← Volver al catálogo

Amazon EventBridge

En una frase: Bus de eventos que enruta sucesos de apps, SaaS y AWS a destinos según reglas
Certificaciones: SAA-C03 SAP-C02 CLF-C02 DVA-C02

Qué es

Amazon EventBridge es un servicio sin servidores para construir arquitecturas dirigidas por eventos. Un evento es un JSON (JavaScript Object Notation: formato de datos en texto) que dice "ha pasado algo" (se creó un pedido, una instancia cambió de estado, alguien subió un fichero). EventBridge recibe esos eventos en un bus, los compara con reglas y envía los que coinciden a sus destinos. Quien emite el evento no necesita saber quién lo consume. Antes se llamaba CloudWatch Events, y ha crecido con dos piezas más: Scheduler (tareas programadas) y Pipes (conexiones punto a punto).

Conceptos clave

  • Buses de eventos: el bus por defecto recibe los eventos de los servicios de AWS; los personalizados, los de tus aplicaciones; los de socios, los de proveedores SaaS (software como servicio) como Zendesk o Shopify.
  • Reglas y patrones: una regla filtra eventos por cualquier campo del JSON (prefijos, números, listas, existencia…) y los envía a hasta 5 destinos. También puede transformar el evento antes de enviarlo (input transformer).
  • Destinos: Lambda, SQS (Simple Queue Service), SNS (Simple Notification Service), Step Functions, Kinesis, ECS (Elastic Container Service), API Gateway, otro bus (incluso de otra cuenta o región), API (Application Programming Interface: interfaz para que los programas se comuniquen) destinations hacia cualquier API HTTP (HyperText Transfer Protocol: protocolo de la web) externa, y muchos más.
  • Tamaño de evento: hasta 1 MB en la mayoría de regiones (antes 256 KB).
  • Archivo y reproducción: guarda eventos y permite volver a enviarlos, útil para recuperarse de errores o probar un consumidor nuevo.
  • Registro de esquemas: descubre la estructura de los eventos y genera código para usarlos con tipos.
  • EventBridge Scheduler: programa millones de tareas puntuales o recurrentes (expresiones cron y rate, con zona horaria) que invocan directamente más de 200 servicios. Sustituye a las reglas programadas.
  • EventBridge Pipes: conecta una fuente (SQS, Kinesis, DynamoDB Streams, MSK (Managed Streaming for Apache Kafka)…) con un destino, con filtrado, enriquecimiento y transformación opcionales, sin escribir código de pegamento.
  • Reintentos y DLQ (Dead-Letter Queue: cola donde acaban los mensajes que fallan): reintenta hasta 24 horas y, si no consigue entregar, envía el evento a una cola de mensajes fallidos de SQS.

Casos de uso típicos

  • Reaccionar a cambios en AWS: una instancia se detiene, un bucket se hace público, falla un despliegue.
  • Desacoplar microservicios que publican eventos de dominio y se suscriben por reglas.
  • Integrar aplicaciones SaaS con tus funciones o colas sin sondear sus API.
  • Tareas programadas (informes diarios, limpiezas, recordatorios) con Scheduler.
  • Centralizar eventos de varias cuentas en una cuenta de seguridad u operaciones.

Cuándo NO usarlo

  • Si los mensajes deben esperar a que un consumidor los recoja: SQS (EventBridge entrega, no almacena salvo el archivo).
  • Streaming de gran volumen con orden y relectura: Kinesis Data Streams o MSK.
  • Notificaciones a personas por SMS (Short Message Service: mensajes de texto al móvil) o push móvil: SNS.
  • Orquestar pasos con estado y esperas: Step Functions (que se puede lanzar desde EventBridge).

EventBridge frente a SNS

NecesidadEventBridgeSNS
Eventos de servicios de AWS y SaaSSí, nativosSolo los que publican en SNS
FiltradoPatrones sobre todo el eventoPolíticas de filtrado
DestinosMás de 20 servicios y API externasSQS, Lambda, HTTP, correo, SMS, móvil
Programación horariaSí (Scheduler)No
Archivo y reproducciónSíSolo temas FIFO (First In, First Out: el primero en entrar es el primero en salir)
Rendimiento y latenciaAlto, con cuotas por regiónMuy alto, latencia mínima

Modelo de precios

Los eventos de servicios de AWS en el bus por defecto son gratuitos; se pagan los eventos personalizados y de socios publicados (por millón, cada 64 KB cuenta como uno), la entrega entre cuentas, el archivo (por GB guardado y procesado), las invocaciones de API destinations, las peticiones de Pipes y las invocaciones de Scheduler (con un nivel gratuito generoso).

Seguridad y alta disponibilidad

  • Servicio regional y redundante en varias zonas.
  • Políticas de recursos en el bus para aceptar eventos de otras cuentas o de la organización.
  • Roles de IAM (Identity and Access Management) para que EventBridge invoque los destinos.
  • Cifrado en reposo, con opción de clave de KMS (Key Management Service) gestionada por el cliente.
  • Buses globales y replicación de eventos entre regiones con global endpoints.

Trampas de examen

  • "Reaccionar a un cambio de estado de un servicio de AWS": regla de EventBridge.
  • "Ejecutar una Lambda cada día a las 8:00": EventBridge Scheduler (o una regla programada).
  • "Integrar eventos de un SaaS": bus de socio de EventBridge.
  • "Conectar una cola con Step Functions sin código intermedio": EventBridge Pipes.
  • "Reprocesar los eventos de ayer tras corregir un error": archivo y reproducción.
  • "Centralizar eventos de todas las cuentas": reglas que envían al bus de una cuenta central con política de recursos.
  • "Llamar a una API HTTP de un tercero ante un evento": API destinations.

Preguntas de práctica

Preguntas originales escritas para estos apuntes. No son preguntas reales de examen.

Fuentes