Aplica contrapresión en vez de acumular. Acota todas las colas, descarta carga pronto con un 429 o un 503 cuando se alcanzan los límites de concurrencia, y rechaza las peticiones cuyo plazo ya ha vencido en vez de trabajar en ellas. Las colas sin límite convierten una sobrecarga en un colapso de latencia, porque cada petición espera detrás de trabajo que ya no espera nadie. Prioriza por tipo de tráfico si unas cosas importan más que otras, y autoescala con una señal que se adelante, como la profundidad de la cola.
Por qué lo preguntan los entrevistadores
Esto distingue a quien ha estado de guardia durante una sobrecarga de quien no. El entrevistador quiere oír que una cola no es capacidad gratis, que descartar carga es una decisión de diseño legítima y que tirar el trabajo caducado recupera el rendimiento. También sondea si conoces la intuición de colas: pasada la saturación, la latencia sube sin que aumente el rendimiento útil.
Cómo estructurar tu respuesta
- Explica por qué acumular empeora la sobrecarga en vez de mejorarla.
- Acota las colas y descarta carga con un código de estado explícito.
- Descarta el trabajo cuyo plazo ha vencido.
- Añade priorización y una señal de escalado que reaccione a tiempo.
Ejemplo de respuesta
El instinto es poner una cola más grande, pero eso solo convierte una sobrecarga en un fallo lento, porque cada petición se sienta detrás de un atasco y, cuando por fin se atiende, el cliente ya se ha rendido. Así que lo primero que hago es acotar la cola y añadir un límite de concurrencia, y cuando se llena devuelvo un 503 con retry after inmediatamente. Rechazar rápido es más amable que agotar el timeout despacio, tanto para el usuario como para el sistema. Segundo, compruebo el plazo antes de hacer el trabajo: si la petición lleva esperando más que su presupuesto, la descarto, lo que libera capacidad para las que todavía pueden salir bien. Ese cambio por sí solo es el que recupera el rendimiento de forma visible durante un incidente. Después la priorización, porque no todo el tráfico es igual; en un sistema descartábamos primero el tráfico de sincronización en segundo plano y manteníamos fluidas las peticiones interactivas. Y escalo con la profundidad de cola o la concurrencia en vez de con la CPU media, porque la CPU se aplana cerca de la saturación y reacciona demasiado tarde para servir de algo.
¿Tienes esta entrevista a la vuelta de la esquina? GhostPilot escucha tu llamada en vivo, detecta la pregunta en cuanto la hacen y pone una respuesta estructurada en tu pantalla en tiempo real. Pruébalo en tu próxima entrevista de práctica, o coge un Session Pass de $29, sin suscripción, para la de verdad.
Mira cómo funcionaPreguntas de seguimiento que puedes esperar
- ¿Cómo elegirías un límite de concurrencia en vez de adivinarlo?
- ¿Qué diferencia hay aquí entre descartar carga y limitar la tasa?
- ¿Cómo evitas que todas las peticiones descartadas reintenten a la vez?
Más preguntas para Desarrollador backend
Tu entrevistador hará su propia versión de esta. Pega la descripción real del puesto en el Question Predictor gratuito y obtén las 20 preguntas que ese puesto tiene más probabilidades de hacerte, con lo que cada una busca en realidad.
Predecir mis preguntas