← Todo el material
Curso Intermedio 6 de septiembre de 2026

Arquitectura Azure — Módulo 5: integración, Service Bus y los despertadores

Quinto módulo del curso de arquitectura Azure: la columna de integración con la cola más equipada de la serie. Service Bus con DLQ nativo, sesiones y orden de fábrica, Event Grid como bus de eventos, Storage Queues como opción austera, el trío de despertadores del agente y API Management en la puerta — con el criterio para repartir cada pieza.

☰ Índice del contenido

Los principios de la columna de integración cierran la serie sin una enmienda: asíncrono entre servicios, DLQ en toda cola, idempotencia en todo consumidor, y el agente despertado por cola, evento o reloj. Azure los implementa con la cola más equipada de las tres nubes y un reparto de piezas que conviene tener claro.

FunciónEn AWSEn GCPEn Azure
Cola de trabajoSQSPub/Sub (pull)Service Bus (queues)
Publicar en abanicoSNSPub/Sub (multi-sub)Service Bus (topics)
Bus de eventos con reglasEventBridgeEventarcEvent Grid
Cola austera de volumen——Storage Queues
Reloj / cronEventBridge SchedulerCloud SchedulerCron de Container Apps jobs / Logic Apps
Puerta de APIsAPI GatewayAPI Gateway/ApigeeAPI Management (APIM)

La tesis del módulo

Service Bus trae de fábrica lo que en otras nubes era diseño artesanal — DLQ automática en cada cola, sesiones que garantizan orden y afinidad por entidad, deduplicación por ID, entrega programada — y ese equipamiento cambia el reparto de responsabilidades: parte de la disciplina que el consumidor cargaba se muda a la infraestructura. Lo que no se muda nunca: la idempotencia sigue siendo del consumidor, porque el mundo sigue entregando al menos una vez.

Service Bus: la cola enterprise

Las piezas: queues (cola clásica: uno procesa) y topics con suscripciones (abanico con filtros por suscripción — el evento “cotización enviada” llega filtrado a quien corresponde). Y el equipamiento que distingue a esta casa:

  • DLQ integrada: cada cola y suscripción nace con su dead-letter — el argumento innegociable de la serie, aquí sin siquiera configurarlo. Lo que sigue siendo tuyo: la alarma encima (módulo 11) y el hábito de mirarla.
  • Sesiones (sessions): mensajes con el mismo session ID procesados en orden y por el mismo consumidor. Para agentes es la finura mayor del módulo: la conversación del cliente X como sesión garantiza que sus mensajes no se procesen en paralelo desordenado — la afinidad conversacional que en SQS exigía colas FIFO con grupos y en Pub/Sub claves de orden, aquí con semántica pensada para el caso.
  • Deduplicación por message ID en ventana temporal: el duplicado del productor descartado por la infraestructura. Reduce (no elimina) el trabajo de idempotencia: cubre el “publiqué dos veces”, no el “procesé dos veces tras un fallo post-proceso” — el consumidor idempotente sigue siendo ley.
  • Entrega programada y aplazamiento: el mensaje que aparece a las 9:00, el reintento en 4 horas — parte del rol que Cloud Tasks jugaba en GCP, dentro de la cola.

Storage Queues es la alternativa austera (simple, baratísima, sin topics ni sesiones) para volúmenes brutos sin requisitos — legítima en pipelines internos de gran volumen; la plataforma de agentes típica vive mejor en Service Bus. Event Grid es el bus de eventos — los sucesos de la infraestructura Azure (el blob subido, el recurso creado) y los tuyos, enrutados por filtros hacia Container Apps, Functions o colas: el EventBridge/Eventarc local, con la misma misión de despertar.

      QUIÉN DESPIERTA AL AGENTE (AZURE)

  correo llega     cada noche 2am    blob subido
       │                │                │
       ▼                ▼                ▼
  ┌──────────┐   ┌─────────────┐   ┌───────────┐
  │ Service  │   │ cron del    │   │ Event     │
  │ Bus      │   │ Container   │   │ Grid      │
  │ (+DLQ)   │   │ Apps job    │   │ (filtro)  │
  └────┬─────┘   └──────┬──────┘   └─────┬─────┘
       │                │                │
       └───────────┬────┴────────────────┘
                   ▼
           ┌───────────────┐
           │ Container App │  KEDA escala
           │ / job (KEDA   │  por la cola
           │ por la cola)  │  (módulo 3)
           └───────────────┘

El cierre del cuadro es la conexión con el módulo 3: KEDA escalando por el largo de la cola de Service Bus es la unión más limpia de la serie entre mensajería y cómputo — el despertador y el músculo declarados como un solo comportamiento.

APIM en la puerta (y las herramientas, como siempre)

API Management es el portero de esta casa — autenticación, rate limits y cuotas por cliente, la primera línea contra el denial of wallet — con una particularidad que adelanta el módulo 7: APIM tiene un papel inusualmente protagónico en Azure como gateway de LLMs (políticas específicas para limitar tokens, balancear despliegues de modelos y registrar el uso), así que la pieza que aquí guarda la puerta de entrada reaparecerá guardando la puerta de salida hacia los modelos. Y las herramientas del agente cierran igual que siempre: APIs internas concretas — idealmente MCP — corriendo como microservicios de la plataforma, con su managed identity y su lugar en la VNet.

Ojo — el equipamiento no reemplaza el diseño: la tentación de Service Bus es usar todas las finuras porque están. Las sesiones serializan (adiós paralelismo dentro de cada sesión — correcto para la conversación del cliente X, incorrecto para el lote de 10.000 correos independientes); la deduplicación por ID cuesta throughput; la entrega programada no es un scheduler general. Cada finura se activa por una razón del caso, no por catálogo — el eco del “elegir forma de suscripción” de GCP: el poder está en elegir, no en encender todo.

Errores comunes

  • Sesiones para todo. La afinidad ordenada donde no hace falta mata el paralelismo del consumidor. Sesiones para lo conversacional; cola plana para lo independiente.
  • Confundir la dedup del broker con idempotencia. Service Bus descarta el duplicado del productor; el fallo post-procesamiento sigue reentregando. La clave de deduplicación en el consumidor no se jubila.
  • DLQ nativa, alarma ausente. Que la cola muerta exista de fábrica no significa que alguien la mire. La alarma con acción del módulo 11 sigue siendo el trabajo.
  • Storage Queues por ahorro reflejo. Barata hasta que necesitas topics, sesiones o dedup y los reconstruyes a mano encima. El ahorro se calcula con los requisitos completos.
  • Event Grid como cola. Es un enrutador de eventos, no un buffer de trabajo con reintentos pacientes. Eventos por Grid, trabajo por Service Bus — la distinción evento/comando de la serie con nombres locales.
  • APIM tarde. Servicios expuestos “mientras tanto” sin portero: cada uno improvisa auth y límites. La puerta se pone antes del tráfico, en todas las nubes.

La frase para llevarse

“Service Bus te regala lo que en otras nubes diseñabas — DLQ, orden por sesión, dedup del productor, entrega programada — pero regala herramientas, no criterio: cada finura se enciende por una razón del caso, la idempotencia sigue siendo del consumidor, y KEDA escalando por la cola cierra el círculo del trabajo que despierta cómputo.”

Qué viene

Módulo 6: estado y datos. El reparto por forma de acceso con las casas de Azure: Cosmos DB para sesiones (con búsqueda vectorial integrada — un giro en la decisión vectorial), Azure Database for PostgreSQL con pgvector, Blob Storage para objetos, y Azure AI Search — el buscador vector+híbrido que en el módulo 9 alimentará el grounding de los agentes.

Material relacionado

AzureService BusEvent GridIntegraciónAgentes

Preguntas sobre este curso

Regístrate gratis para hacer preguntas y guardar tu progreso.

✉ Entérate de lo nuevo

Recibe un aviso cuando publique nuevos cursos, workshops o investigaciones. Sin spam.