Diseñando un acortador de URL: de la arquitectura a la implementación en Node.js

Optimiza tus enlaces con un acortador de URL desarrollado en Node.js. Aprende a diseñarlo de forma sencilla y eficiente.

14 dic 2025 • 6 min read • Q2BSTUDIO Team

Diseñando un acortador de URL con Node.js.

Después de practicar conceptos de diseño de sistemas durante un tiempo, decidí aplicarlos construyendo proyectos reales. Este artículo describe el diseño e implementación de un acortador de URL de extremo a extremo, traduciendo ideas de alto nivel a un sistema funcional que considera arquitectura, caching, bases de datos y escalabilidad. Un acortador de URL parece trivial a primera vista pero plantea retos de ingeniería importantes cuando se diseña para escala, fiabilidad y rendimiento.

Qué es un acortador de URL: convierte una URL larga en un alias compacto. Cuando alguien abre la URL corta, el sistema busca la URL larga original y redirige al usuario. Esencialmente es un mapeo clave valor short_code a long_url.

Por qué necesitamos acortadores de URL: mejor experiencia de usuario al facilitar lectura y compartición, cumplimiento de restricciones de plataformas como SMS o códigos QR, posibilidad de análisis de clics por tiempo, ubicación y dispositivo, y gestión de enlaces incluyendo expiración, desactivado y pruebas A B.

Visión general de alto nivel: la arquitectura lógica incluye capas que aportan latencia baja y tolerancia a fallos. Componentes clave: navegador con cache para el cliente, CDN para distribución global, balanceador de carga para distribución y failover, capa de servicio stateless con la lógica de negocio, cache en memoria tipo Redis para accesos calientes y base de datos persistente para durabilidad.

Diseño de base de datos: modelo de datos simple con campos short_code como clave primaria, long_url, created_at, expiry_at y click_count opcional. Para sistemas a gran escala este es un patrón clave valor idóneo para NoSQL como DynamoDB o Cassandra donde la clave de partición es short_code. Para implementaciones más sencillas una base de datos SQL ofrece consistencia fuerte y simplicidad.

Cache servidor lado con Redis: el tráfico de redirecciones suele ser mayoritariamente lecturas. Redis ofrece velocidad en memoria, descarga la base de datos y gestiona eficientemente enlaces calientes. Flujo típico: petición llega, consulta Redis, si hit redirige, si miss consulta la base, actualiza cache y redirige.

Cache en el navegador y redirecciones HTTP: el cache del navegador puede bypassar por completo nuestros servidores por eso es una decisión con trade offs. Códigos de redirección 301 suelen cachearse agresivamente mientras que 302 y 307 se revalidan. En producción frecuentemente se desactiva el cache del navegador con cabeceras Cache Control no store y no cache para no perder analíticas y poder revocar o rotar destinos. El rendimiento se obtiene de Redis y del CDN, no del cache del navegador cuando se necesita control sobre la medición y seguridad.

Generación de short codes: Base62 es una estrategia común con caracteres a z A Z 0 9 para producir identificadores compactos y URL safe. Puede ser determinista a partir de un identificador incremental o generado con hashing y chequeos de colisión.

Cálculos aproximados: con supuestos de ejemplo DAU y tasas de redirección se observa que el sistema es intensivo en lecturas. Por ejemplo 1 millon de URLs creadas por día son alrededor de 12 escrituras por segundo y si cada URL recibe 50 redirecciones por día esto puede suponer decenas de miles de millones de peticiones anuales. El almacenamiento por URL puede ser centena de bytes, y una cache de Redis con unos millones de entradas suele caber en pocos gigabytes, haciendo viable el enfoque NoSQL más cache en memoria.

Implementación limpia en Node.js: una estructura de proyecto recomendada separa capas para controladores, servicios, repositorios y clients de cache. El flujo es: endpoint POST para crear acortados que genera un id, lo codifica en base62, persiste en la base y escribe en Redis; endpoint GET para redirigir que consulta Redis primero y si no encuentra consulta la base y rellena la cache.

Ejemplo de base62 en pseudocódigo: definir un alfabeto de 62 caracteres, convertir un entero en su representación en base 62 iterando dividiendo entre 62 y tomando restos. Esta función es ligera, determinista y fácil de escalar si el id es monotónico o proviene de un generador distribuido.

Consideraciones operativas y de rendimiento: usar un balanceador y varias réplicas stateless de la capa de servicio facilita escalado horizontal. Redis puede colocarse en clúster para alta disponibilidad y particionado. La base de datos debe escogerse según necesidades de consistencia y throughput: SQL para simplicidad y transacciones, NoSQL para escalado masivo. Añadir un CDN delante reduce latencia geográfica para recursos estáticos y puede cachear redirecciones de menor importancia si se decide sacrificar control de analíticas.

Seguridad y gestión de enlaces: validar la URL de destino para evitar open redirects usados en phishing, permitir revocación y expiración, y proteger endpoints de creación por abuso con autenticación o límites de tasa. La ciberseguridad es clave en todo servicio de enlaces; en Q2BSTUDIO aplicamos prácticas de pentesting y endurecimiento que permiten entregar soluciones más seguras y confiables. Si te interesa evaluar seguridad podemos ayudar con servicios de auditoría y pentesting a medida y continuos, consulta nuestra sección de ciber seguridad en ciber seguridad y pentesting.

Buenas prácticas de instrumentación: registrar métricas de latencia, hits y misses de cache, tasa de errores, tasa de creación de enlaces y clicks. Centralizar logs y usar dashboards de business intelligence facilita detectar patrones de uso y analizar rendimiento. En Q2BSTUDIO integramos soluciones de inteligencia de negocio y Power BI para dotar a los equipos de visibilidad avanzada sobre el uso de sus aplicaciones.

Cómo encaja esto con servicios empresariales: un acortador bien diseñado puede formar parte de una plataforma más amplia de aplicaciones a medida y software a medida. En Q2BSTUDIO desarrollamos aplicaciones a medida que incluyen integración con servicios cloud y soluciones de inteligencia artificial para enriquecer la experiencia de usuario y automatizar procesos. Si buscas desarrollar una solución propia o integrar IA para empresas revisa nuestra propuesta de desarrollo de aplicaciones a medida en desarrollo de aplicaciones a medida y nuestra oferta de inteligencia artificial en soluciones de inteligencia artificial para empresas.

Integración cloud: desplegar la capa stateless en servicios cloud gestionados y usar bases de datos NoSQL administradas facilita la operación. Q2BSTUDIO ofrece servicios cloud aws y azure para diseñar arquitecturas resilientes y escalables aprovechando capacidades nativas como balanceo, auto scaling y caches gestionados.

Lecciones finales: un acortador de URL es un excelente ejercicio de diseño de sistemas porque cubre modelado de datos, estrategia de cache en varios niveles, semántica HTTP y estimación de escala. La clave no es multiplicar caches sino colocar el cache correcto en la capa correcta. Si deseas construir una solución robusta, segura y optimizada, en Q2BSTUDIO podemos acompañarte desde el diseño hasta la operación, incluyendo desarrollo de software a medida, servicios cloud, inteligencia de negocio y ciberseguridad.

Contacto y siguientes pasos: si te interesa un prototipo o una consultoría para diseñar un acortador de URLs a la medida de tu negocio, habla con nuestro equipo y explora cómo integrar IA, agentes IA, automatización de procesos y dashboards en Power BI para maximizar valor y seguridad.

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.

Live Chat