Un usuario pulsa «Generar informe» y tu endpoint tarda 40 segundos en responder, porque generar el informe tarda 40 segundos. Durante ese tiempo, la conexión HTTP está abierta, un worker del servidor…
Desarrollo Backend
Paginación en APIs: offset vs cursor
Devolver una tabla entera en una sola respuesta funciona hasta que la tabla crece. Con 100.000 productos, un GET /productos sin límite significa megabytes de JSON, segundos de espera y un cliente…
Rate limiting: algoritmos y buenas prácticas
Una API sin límite de tráfico tiene un único cliente mal configurado a distancia de una caída. Un script en bucle sin sleep, un bug que re intenta sin backoff, o directamente…
Idempotencia en APIs: qué es y cómo implementarla
Un cliente móvil envía un POST /pedidos. La red tarda, el cliente no recibe respuesta a tiempo y reintenta automáticamente. El servidor sí había recibido la primera petición y ya había creado…
OAuth2 y OpenID Connect: la diferencia clave
En el artículo sobre JWT vimos cómo un servidor firma un token para reconocer a un usuario que ha hecho login directamente contra tu propia aplicación. Pero el botón «Continuar con Google»…
ORM vs SQL directo: cómo el backend accede a los datos
El backend necesita hablar con la base de datos. La pregunta es cómo. Hay dos enfoques principales: escribir el SQL a mano o usar una capa de abstracción que lo genere automáticamente.…
WebSockets: comunicación en tiempo real
HTTP funciona siempre igual: el cliente pregunta y el servidor responde. La conexión se abre, se intercambia un mensaje y se cierra. Pero hay aplicaciones donde ese modelo no encaja: un chat…
JWT: qué es, cómo funciona y cuándo usarlo
HTTP es un protocolo sin estado. Cada petición es independiente: el servidor no recuerda nada de las anteriores. Esto crea un problema concreto: si un usuario inicia sesión y luego pide sus…
Autenticación y autorización en el backend
Cuando entras a una oficina, el guardia comprueba tu identificación. Eso es autenticación: verificar quién eres. Cuando llegas a una sala restringida y tu tarjeta de acceso no abre la puerta, eso…
Azure Functions con C#: qué son y cómo funcionan
Cuando una API recibe tráfico de forma irregular, tener un servidor encendido las 24 horas es un gasto que no tiene sentido. El modelo serverless resuelve exactamente eso: el código se ejecuta…