Coordina procesosa gran escala
Mover trabajo fuera de la petición y coordinar sistemas distribuidos: tareas en segundo plano, colas, garantías de entrega, eventos y tiempo real con WebSockets. Diseñar para que no se pierda trabajo.
Acceso al curso completo, ejercicios y material de entrevista.
# Responder ya, hacer el trabajo lento después @app.post("/informes") async def crear_informe(datos: Filtro): # no se genera aquí: se encola job = generar_informe.delay(datos.dict()) return {"job_id": job.id, "estado": "en_cola"}, 202
No solo aprendes asincronía. Te preparas para que te contraten.
Banco orientado a la entrevista técnica: diseñar un flujo asíncrono, justificar garantías de entrega e idempotencia y elegir entre cola, eventos o tiempo real.
Del await a diseñar un sistema distribuido que no pierde trabajo
Asincronía dentro del proceso
Bucle de eventos, async/await, promesas y cuándo bastan hilos o procesos.
Tareas en segundo plano y colas
Productor-consumidor, workers, cron distribuido y los patrones fan-out y pipeline.
Garantías de entrega
At-least-once, idempotencia y deduplicación, ack, reintentos y dead letter queue.
Eventos, streams y reactiva
Event sourcing, Kafka, programación reactiva, backpressure y procesamiento de flujos.
Tiempo real, de extremo a extremo
WebSockets y SSE, presencia y colaboración, miles de conexiones y un backplane de pub/sub.
Implementarlo y operarlo
Celery, BullMQ, Socket.IO y Django Channels; métricas de cola, backoff y trazas.