Del bloqueo a la velocidad: Cómo resolvimos mil usuarios concurrentes

Guía práctica sobre sincronía vs asincronía, WebSockets y colas de mensajes para seguimiento de paquetes. Caso real con UFSPD y un enfoque escalable y resiliente.

7 sept 2025 • 4 min read • Q2BSTUDIO Team

Inteligencia-Artificial-

Un recorrido práctico y para principiantes por sincronía vs asincronía, WebSockets y colas de mensajes, explicado a través de un problema real y su solución escalable.

Imagina que creas una app de tracking de paquetes. Con 10 y 100 usuarios todo fluye. Pero cuando 1000 repartidores intentan enviar su ubicación a la vez, la base de datos colapsa, la app se vuelve inutilizable y la frustración de los usuarios se dispara.

En una revisión de arquitectura detectamos el cuello de botella: cada actualización de ubicación se ejecutaba dentro de una transacción y el endpoint HTTP no devolvía respuesta hasta que la escritura en base de datos terminaba. Con cientos de peticiones concurrentes, el motor de datos se saturaba con escrituras simultáneas, la latencia saltaba de decenas de milisegundos a varios segundos, aparecían timeouts y la experiencia parecía rota.

Antes de proponer cambios, entendimos cuándo conviene operar en modo síncrono y cuándo en modo asíncrono. Usamos un marco mental sencillo al que llamamos UFSPD: experiencia de usuario, impacto del fallo, consistencia del estado, rendimiento, dependencias. Si el usuario no necesita respuesta inmediata, el fallo puede reintentarse de forma transparente, la consistencia eventual es suficiente, la latencia deseada es baja y nada depende de forma inmediata de la operación, entonces el proceso admite asincronía.

Aplicado a las actualizaciones de ubicación, la conclusión es clara: deben ser asíncronas. En cambio, una confirmación de entrega vinculada al cobro sí exige flujo síncrono porque la experiencia, el impacto del fallo, la consistencia inmediata y las dependencias de pago lo requieren.

Una analogía útil es la cocina de un restaurante. Sin cola de mensajes, cien clientes se agolpan frente a un solo chef y todo se atraganta. Con una cola, los pedidos se registran en caja, se convierten en tickets y la cocina los procesa a ritmo óptimo. Los clientes reciben confirmación de pedido recibido al instante y el sistema mantiene el orden incluso en hora punta.

También optimizamos la comunicación entre el cliente y el servidor. Con peticiones HTTP tradicionales se abre y cierra una conexión por cada envío. Con WebSockets se establece un canal persistente: se conecta una vez y cada actualización viaja de forma inmediata, reduciendo overhead, latencia y consumo de recursos.

La solución final combinó WebSocket y cola de mensajes. El repartidor se conecta vía WebSocket, envía su posición, validamos el payload y lo encolamos en el broker como tarea asíncrona con reintentos. De forma inmediata devolvemos recibido con marca de tiempo, mientras uno o varios workers consumen la cola y escriben la última posición en base de datos. El sistema opera con consistencia eventual para la geolocalización, suficiente para el caso de uso.

Para el procesamiento en segundo plano empleamos un sistema de tareas con reintentos y backoff. Cada mensaje actualiza de forma idempotente las coordenadas del repartidor, registra auditoría y, si ocurre un error transitorio, reintenta sin que el usuario lo perciba.

Los resultados hablaron por sí solos. Antes, la respuesta promediaba medio segundo, con un 15 por ciento de fallos bajo 1000 usuarios concurrentes y miles de conexiones a la base de datos. Después, la respuesta bajó a unos 30 milisegundos, la tasa de fallos cayó por debajo del 0.1 por ciento gracias a reintentos automáticos y el acceso a base de datos quedó concentrado en 10 a 20 workers estables. La app se siente instantánea.

Para la confirmación de entrega adoptamos una estrategia híbrida. Primario: confirmación automática por GPS cuando la señal es fiable. Respaldo: botón manual cuando fallan GPS o red. Verificación: foto y traza de ubicación para auditoría. Así garantizamos el proceso de pago incluso si servicios externos fallan.

Lecciones clave. Mide antes de optimizar y localiza el cuello de botella en el código. Usa la herramienta adecuada: síncrono para flujos críticos como autenticación y pagos, asíncrono para tareas de fondo como notificaciones y analítica, WebSockets para actualizaciones en tiempo real, colas de mensajes para desacoplar y ganar fiabilidad. Piensa en sistemas de extremo a extremo. Planifica el fallo con mecanismos de resiliencia. Empieza simple y evoluciona según escala.

De cara al futuro, evalúa tecnologías de colas y streaming como Kafka, RabbitMQ o AWS SNS, decide entre gRPC y HTTP para microservicios, adopta patrones pub sub para arquitectura dirigida por eventos y explora edge computing cuando necesites alcance global. Los fundamentos de sincronía vs asincronía, colas para desacoplar y WebSockets para tiempo real son la base de todo lo demás.

En Q2BSTUDIO diseñamos y construimos software a medida y aplicaciones a medida escalables, seguras y listas para crecer. Combinamos arquitectura moderna con inteligencia artificial, ia para empresas y agentes IA para automatizar y optimizar operaciones, reforzamos la ciberseguridad end to end y desplegamos en servicios cloud aws y azure con observabilidad y costes bajo control. Si buscas un partner para llevar tu plataforma en tiempo real al siguiente nivel, explora nuestro desarrollo de aplicaciones y software multiplataforma y aprovecha nuestros servicios cloud en Azure y AWS.

También impulsamos la toma de decisiones con servicios inteligencia de negocio y power bi, y ofrecemos automatización de procesos para eliminar cuellos de botella operativos. Si quieres debatir cómo aplicar estos patrones a tu caso, estaremos encantados de ayudarte a diseñar una arquitectura rápida, resiliente y preparada para el futuro.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.