Existe sólo durante un request. Cero memoria entre requests. Cold start cinco milisegundos. Infinitos paralelos sin configuración.
Veinte primitivas, veinte propiedades singulares. Cada una resuelve un solo tradeoff de compute, state y consistency. La maestría no está en saberlas todas — sino en distinguir cuál se aplica al problema que tienes enfrente.
El núcleo del stack. Cada una con su esencia, analogía precisa que aísla su propiedad única, y qué hueco deja si la quitas.
Existe sólo durante un request. Cero memoria entre requests. Cold start cinco milisegundos. Infinitos paralelos sin configuración.
Reads desde edge en diez milisegundos. Writes propagan en sesenta segundos al mundo. Cap de un write por segundo por key. Reads sin límite.
SQL relacional, joins, transactions. Aproximadamente un gigabyte. Mil writes por segundo en primary. Read replicas distribuidas globalmente.
Stateful in-memory más SQLite local. Strong consistency. Hiberna y despierta. Soporta alarms, WebSockets, RPC entre workers.
Retry con backoff exponencial. Batching. Dead letter queue para mensajes irrecuperables. At-least-once delivery — la idempotencia es responsabilidad tuya.
Cada step persiste su resultado. Sobrevive crashes del runtime. Reanuda desde el último step exitoso. Soporta sleep de horas o días.
Cada primitiva ocupa un punto único en el espacio de tradeoffs. Si necesitas una combinación específica, sólo una la tiene.
| Primitiva | Stateful | Consistencia | Throughput | Scope | Cuándo Sólo Ésta Sirve |
|---|---|---|---|---|---|
| Worker | Non | n/a | ∞ horizontal | Globalis | Compute en edge |
| KV | Sic | Eventual ~60s | ∞ reads · 1/s/key | Globalis | Cache global lectura masiva |
| D1 | Sic | Strong | ~1K writes/s | Regional + replicae | Queries SQL relacional |
| Durable Object | Sic | Strong | 1 writer/ID · ∞ IDs | Per-ID globalis | Coordinación per-entidad |
| Queue | Buffer | At-least-once | Alto sostenido | Globalis | Async decouple |
| Workflow | Run state | Strong replay | Long-running | Globalis | Multi-step durable |
Compute · State · Consistency. Los PaaS tradicionales mezclan estos ejes en "servidores". Cloudflare los separa deliberadamente.
Más allá del núcleo. Storage, intelligence, connectivity, media — todas con su propósito singular en el firmamento del stack.
Mapa de relaciones entre primitivas. Worker en el centro — toda lógica orquesta desde ahí. Hover sobre cada nodo para ver su rol.
Confundir primitivas produce bugs estructurales. Usar KV para counter genera race conditions silenciosas. Usar D1 para session token causa fila en el primary. Usar DO para cache global convierte un solo isolate en cuello de botella global.
La verdadera maestría de Cloudflare no consiste en saber usar Workers. Consiste en leer el requirement, identificar el tradeoff dominante — latency contra consistency contra coordination — y mapearlo a la primitiva exacta. Cuando piensas en propiedades, la elección se vuelve casi mecánica.