Saltar al contenido
ThroughputBatchingIdempotencia

Procesamiento de datos de alto throughput

El throughput es un problema de pipeline: batching, backpressure, idempotencia y un store que acepte el patrón de escritura que realmente tienes.

Experiencia personal

Los caminos de alto throughput en trabajo reciente de plataforma son workers en Python detrás de Redis Streams, con Laravel dueño de la escritura de dominio. El trabajo backend anterior en TRIKO usó Redis, Memcached, Supervisor y Google Cloud para caminos calientes. Cifras específicas de throughput no están publicadas (TODO_METRIC).

Perspectiva técnica

Mide la unidad de trabajo. Filas por segundo, eventos por segundo y peticiones HTTP por segundo son máquinas distintas. Un pipeline que brilla en inserts secuenciales se cae en updates aleatorios de clave primaria.

Haz batch en los bordes. Escrituras de una fila por la red es cómo las CPUs esperan. El backpressure debe viajar hacia arriba; las colas sin cota son una forma de convertir una base de datos lenta en un corte de memoria.

La idempotencia no es opcional cuando reintentas. La entrega at-least-once es el default en la mayoría de brokers. Diseña la escritura como “aplica este hecho si aún no se aplicó”, no como “incrementa este contador otra vez”.

Architecture

Ingesta, buffer, workers, store

Ingest

Queue / buffer

Workers

Cache

Database

Perspectiva técnica. Cachés y supervisores son parte del camino, no decoración.