Cómo construí un limitador de tasa distribuido con Redis, Lua y Docker

Construye un limitador de tasa distribuido con Redis, Lua y Docker. Incluye ventana deslizante, token bucket y reglas dinámicas.

23 jun 2026 • 4 min de lectura • Equip Q2BSTUDIO

Optimizando la limitación de tasas con Lua en Redis

Cuando se diseña un sistema distribuido que debe manejar cientos de miles de peticiones por segundo, el control de acceso basado en límites de tasa —rate limiting— deja de ser un simple contador en memoria para convertirse en un desafío de consistencia, atomicidad y escalabilidad. Construir un limitador de tasa distribuido que funcione correctamente a través de múltiples instancias de backend exige repensar cómo se comparte el estado, qué estrategias algorítmicas se aplican y cómo se evitan condiciones de carrera. Este artículo analiza en profundidad la arquitectura, los algoritmos y las decisiones técnicas que permiten implementar un sistema de rate limiting robusto, apoyándose en herramientas como Redis, Lua scripting y MongoDB, todo ello ejecutado sobre contenedores Docker. El enfoque aquí no es reproducir implementaciones existentes, sino extraer lecciones transferibles a cualquier proyecto de software a medida.

El problema fundamental surge cuando dos o más servidores tras un balanceador de carga intentan aplicar el mismo límite. Si cada instancia mantiene su propio contador en memoria, un cliente puede enviar 5 peticiones a cada servidor y sobrepasar el límite global de 5 sin ser bloqueado. La solución pasa por un punto de coordinación centralizado, generalmente Redis, que almacena el estado de forma compartida y permite operaciones atómicas. Ahí entra en juego el valor de los servicios cloud aws y azure, donde gestionar infraestructuras elásticas y bases de datos en memoria se vuelve natural. En Q2BSTUDIO, desarrollamos aplicaciones a medida que integran estas capacidades para garantizar que los límites se apliquen independientemente de la topología del despliegue.

Entre los algoritmos de rate limiting, el de ventana deslizante ofrece mayor precisión que la ventana fija, pero su implementación ingenua requiere múltiples idas y vueltas a Redis (eliminar entradas expiradas, insertar timestamp, contar, fijar TTL). Cada operación separada introduce latencia y riesgo de inconsistencia bajo concurrencia. La solución técnica más elegante consiste en empaquetar toda la lógica de la ventana deslizante en un script Lua que se ejecuta en el propio servidor Redis. De esta forma, la operación se vuelve atómica: no hay ventana entre la eliminación de entradas antiguas y el conteo actual. Además se reduce drásticamente el número de viajes de red, mejorando el rendimiento. Este tipo de optimización es exactamente donde la inteligencia artificial y los agentes IA pueden ayudar a predecir patrones de tráfico y ajustar dinámicamente los límites, pero la base sigue siendo un sistema de control de acceso bien diseñado.

La gestión dinámica de reglas es otro pilar. Almacenar las configuraciones de límites (por usuario, por IP, por endpoint) en MongoDB permite cambiarlas sin redeploy, y establecer prioridades entre reglas evita conflictos. Si una regla específica no coincide, un límite de seguridad por defecto —fallback— impide que el sistema quede desprotegido. Este enfoque modular y configurable es característico del software a medida que ofrecemos en Q2BSTUDIO, donde cada cliente puede definir sus propias políticas de acceso sin tocar una línea de código. Además, el seguimiento de violaciones por usuario o IP, almacenado en Redis, alimenta paneles de administración que permiten monitorizar el comportamiento en tiempo real y tomar decisiones basadas en datos, lo que enlaza directamente con servicios inteligencia de negocio y herramientas como power bi para visualizar tendencias de abuso o cuellos de botella.

El uso de Docker Compose para levantar múltiples instancias de backend, Redis y MongoDB facilita validar localmente el comportamiento distribuido. Una prueba reveladora consiste en aplicar un límite global de 5 peticiones, enviar peticiones alternadas a dos servidores y comprobar que la sexta es bloqueada, demostrando que la consistencia se mantiene. Esta práctica de desarrollo, junto con la integración continua, es parte de la metodología que aplicamos en Q2BSTUDIO para garantizar que las soluciones de ciberseguridad y control de acceso funcionen en entornos reales.

Construir un limitador de tasa distribuido va mucho más allá del simple bloqueo de peticiones. Implica entender cuándo mover la lógica cerca del almacén de datos, cómo priorizar reglas y cómo diseñar sistemas configurables en lugar de rígidos. Estas lecciones son directamente aplicables a cualquier plataforma que requiera escalar de forma controlada, ya sea una API pública, un sistema SaaS o una infraestructura corporativa. En Q2BSTUDIO, ayudamos a las empresas a diseñar e implementar este tipo de sistemas utilizando las mejores prácticas en aplicaciones a medida, combinando inteligencia artificial, ciberseguridad y servicios cloud aws y azure para ofrecer soluciones robustas y escalables.

UNA PAUSA?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Intel·ligència artificial

Agents d'IA, chatbots i assistents intel·ligents que automatitzen tasques i atenen els teus clients 24/7 per millorar l'eficiència del teu negoci.

Més info

Desenvolupament de programari

Aplicacions web, mòbils i d'escriptori, intranets, e-commerce, SaaS i plataformes de gestió dissenyades per a les necessitats concretes de la teva empresa.

Més info

Serveis cloud

Migració, infraestructura, hosting gestionat, alta disponibilitat i seguretat en Microsoft Azure i Amazon Web Services perquè el teu negoci escali sense límits.

Més info

Ciberseguretat i pentesting

Auditories de seguretat, test d'intrusió (pentesting) i protecció d'aplicacions, dades i infraestructura on-premise i cloud, amb hacking ètic i compliment normatiu.

Més info

Business Intelligence

Quadres de comandament i anàlisi de dades amb Power BI: integrem les teves fonts, dissenyem dashboards i KPIs i convertim les teves dades en decisions.

Més info

Automatització de processos

Automatitzem tasques repetitives i connectem les teves aplicacions amb n8n, Power Automate, Make i RPA, eliminant treball manual i augmentant la productivitat.

Més info

Formació per a empreses

Formem els teus equips en tecnologia amb criteri: desenvolupament web, bases de dades, Git, bones pràctiques i seguretat, automatització amb n8n, intel·ligència artificial per a empreses i creació de solucions d'IA amb Azure AI Foundry.

Més info

Auditoria de codi

Auditem el codi que creguis tu, el teu equip o una IA: et diem què està bé i què millorar, el securitzem i el deixem llest per a producció, web o app.

Més info

Generació d'imatges amb IA

Creem per tu les imatges que necessita el teu negoci amb intel·ligència artificial: producte, xarxes, publicitat, il·lustració i avatars. Tu ens dius què vols i t'ho lliurem llest per fer servir.

Més info

Generació de vídeos amb IA

Creem per tu vídeos amb intel·ligència artificial: promocionals, per a xarxes, presentadors virtuals, doblatge i animacions. Ens comptes la idea i t'ho lliurem muntat i llest per publicar.

Més info

Avatars conversacionals amb IA

Creem avatars conversacionals amb IA —humans digitals amb cara i veu— que atenen els teus clients i equips amb el coneixement de la teva empresa, a la teva web, monitors interactius, WhatsApp o Teams.

Més info

Màrqueting Online i IA

Google Ads, Meta Ads, LinkedIn Ads i posicionament en motors d'IA (GEO/AEO): captem clients i fem que la teva marca aparegui on et busquen, també a ChatGPT, Gemini i Perplexity.

Més info

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.