Saltar al contenido
Framework Ecosystems LabsUn contrato, muchos ecosistemas, la misma prueba.

Parte 8 — Tiempo real y trabajo en segundo plano#

⬅️ Parte 7 · 🎓 Todas las clases · 📖 Glosario · Parte 9 ➡️

Cuando la respuesta no cabe en el ciclo petición-respuesta: empujar cambios y hacer trabajo fuera de la petición.

Clases 105 a 113 · 9 en total · 9 construidas · 5 tecnologías en juego.

🧭 De qué va esta parte#

Hasta aquí, todo empezaba con una petición. Nueve clases sobre lo que ocurre cuando no.

Dos familias de problemas que se parecen y no lo son. Tiempo real: el servidor tiene algo que contar y hay que hacérselo llegar a un navegador — con sondeo, con eventos enviados por el servidor o con WebSocket, y cada opción cuesta distinto. Y trabajo en segundo plano: algo tiene que ocurrir, pero no ahora ni dentro de la petición.

Es la parte donde el despliegue deja de ser un detalle: casi todo lo de aquí funciona con una instancia y se rompe con dos. Mantener el estado de una conexión, ejecutar una tarea programada una sola vez o repartir mensajes entre procesos son problemas de arquitectura, no de framework.

🎒 Qué da por sabido#

🎯 Qué sabrás hacer al terminarla#

🧵 Por qué en este orden#

Las cuatro primeras son el canal: sondeo, eventos del servidor, WebSocket y qué pasa cuando se corta.

La quinta es la que rompe todo lo anterior al escalar: el estado de conexión con varias instancias.

Las cuatro últimas son el trabajo diferido: colas, tareas programadas, reintentos y eventos de dominio.

📚 Las clases#

# Clase Qué resuelve Nivel Estado
105 Sondeo Resolver el caso simple preguntando cada cierto tiempo. 🟢 introductorio ✅ Construida
106 Eventos enviados por el servidor Empujar en una sola dirección con HTTP normal. 🟡 intermedio ✅ Construida
107 WebSocket Abrir un canal bidireccional y usarlo bien. 🟡 intermedio ✅ Construida
108 Reconexión y mensajes perdidos Sobrevivir a un corte sin perder ni duplicar. 🔴 avanzado ✅ Construida
109 Estado de conexión con varias instancias Difundir a todos los usuarios cuando el servidor no es uno solo. 🔴 avanzado ✅ Construida
110 Colas de trabajo Sacar de la petición lo que no tiene que ocurrir ahora. 🟡 intermedio ✅ Construida
111 Tareas programadas Ejecutar trabajo por tiempo, sin que se duplique entre instancias. 🟡 intermedio ✅ Construida
112 Reintentos e idempotencia Reintentar sin causar daño. 🔴 avanzado ✅ Construida
113 Eventos de dominio Desacoplar lo que ocurrió de quién reacciona. 🔴 avanzado ✅ Construida

🎬 Las tecnologías que aparecen#

Entre paréntesis, en cuántas clases de esta parte interviene cada una. Estar aquí no es una recomendación: es que el problema de esa clase existe de verdad para esa tecnología.

Ecosistema Tecnologías
Node.js Express (9), Socket.IO (3)
Python FastAPI (9)
JVM Spring Boot (9)
.NET ASP.NET Core (6)

📖 Las palabras que esta parte define#

Sondeo · Eventos enviados por el servidor · WebSocket · Cola de trabajo · Tarea programada · Reintento · Evento de dominio

Todas, con su definición, en el glosario.

✅ Cómo se ejecuta una clase de esta parte#

node scripts/run-class.mjs 105

El verificador arranca cada implementación, la somete a su contrato.json y declara cuáles omitió por no encontrar su cadena de herramientas. Si te faltan cadenas, node scripts/doctor.mjs dice cuáles y cómo se instalan.

➡️ Y después#

La parte 9 sale del navegador: la misma aplicación en un móvil, en un escritorio y sin conexión.