Test cuestionario de entrevistas de diseño de sistemas - the question form
Preguntas: 16 · 10 minutos
1. Un almacén replicado tiene N=3 copias, una escritura exitosa requiere W=2 confirmaciones y una lectura consulta R=2 copias. ¿Por qué esta configuración puede ayudar a que una lectura encuentre la última escritura confirmada, suponiendo operaciones de cuórum completadas y un manejo adecuado de versiones?
Porque los cuórums de lectura y escritura deben superponerse cuando R + W es mayor que N
Porque cada escritura se envía exactamente a la misma réplica única
Porque las redes asíncronas siempre entregan las escrituras en orden de marca de tiempo
Porque tres réplicas eliminan la posibilidad de que falle un nodo
2. Un cliente de pagos reintenta una solicitud después de que se agota el tiempo de espera, aunque la primera solicitud podría haberse completado correctamente. ¿Qué diseño evita más directamente un cargo duplicado?
Aumentar el tiempo de espera del cliente para todas las solicitudes de pago
Enviar las solicitudes de pago por una conexión de red de mayor prioridad
Asociar la operación con una clave de idempotencia y reutilizar el resultado registrado
Crear un nuevo identificador de transacción para cada intento de reenvío
3. Un solo servidor de base de datos ya no puede almacenar un conjunto creciente de datos de clientes ni sostener su volumen de escritura. ¿Qué técnica distribuye distintos subconjuntos de datos entre varios servidores?
Replicar el conjunto de datos completo en réplicas de solo lectura
Fragmentar los datos mediante una clave de partición adecuada
Agregar una caché local en memoria al servidor existente
Archivar el registro de transacciones de la base de datos con mayor frecuencia
4. Los usuarios informan que algunas solicitudes ocasionales son muy lentas, pero la latencia promedio aún parece adecuada. ¿Qué métrica mostraría más directamente la cola afectada de la distribución de latencia?
La cantidad total de tablas de la base de datos
El tamaño promedio de la carga útil de las respuestas
La cantidad de despliegues de la aplicación
Un percentil alto, como la latencia p95 o p99 de las solicitudes
5. Al comienzo de una entrevista de diseño de sistemas, ¿qué acción suele proporcionar la mejor base para la arquitectura?
Dibujar el diagrama completo del servicio antes de hablar sobre el tráfico
Seleccionar una base de datos según las tecnologías que utiliza el entrevistador
Aclarar los casos de uso principales, la escala esperada y los requisitos de calidad importantes
Comenzar por optimizar el componente con mayor probabilidad de consumir CPU
6. El servicio de recomendaciones de una tienda en línea deja de estar disponible, pero los detalles de los productos y el proceso de compra siguen funcionando. ¿Qué respuesta demuestra mejor una degradación gradual?
Rechazar todas las solicitudes del sitio hasta que se restablezcan las recomendaciones
Eliminar los datos de recomendaciones para que el servicio se reinicie vacío
Dirigir las solicitudes del proceso de compra a través del servicio de recomendaciones que falló
Mostrar la página principal sin recomendaciones personalizadas o con una alternativa sencilla
7. Una entrada de caché muy popular vence, lo que provoca que miles de solicitudes recalculen simultáneamente el mismo valor. ¿Qué técnica limita más directamente esta avalancha de caché?
Asignar a cada solicitud una clave de caché diferente
Desactivar la caché cada vez que aumente el volumen de solicitudes
Trasladar la caché y la base de datos a la misma máquina
Agrupar los fallos de caché simultáneos para que una solicitud actualice el valor mientras las demás esperan
8. Un servicio de pedidos debe actualizar su base de datos y publicar un evento OrderCreated. Una falla entre esas acciones podría dejarlas en un estado inconsistente. ¿Qué patrón resuelve este problema sin requerir una única transacción distribuida entre la base de datos y el bróker?
Publicar primero el evento y suponer que la posterior escritura en la base de datos no puede fallar
Escribir el pedido y un registro de bandeja de salida en una sola transacción local y luego publicar desde esa bandeja
Ejecutar periódicamente una exportación de la tabla completa en lugar de registrar eventos
Permitir que cada consumidor cree de forma independiente el registro original del pedido
9. Una base de datos ejecuta con frecuencia esta consulta: WHERE tenant_id = ? AND created_at > ? ORDER BY created_at. ¿Qué índice compuesto suele ser el punto de partida más adecuado?
Un índice sobre (tenant_id, created_at)
Índices separados únicamente sobre la clave principal y el nombre para mostrar
Un índice sobre una columna de estado no relacionada y de baja cardinalidad
Un índice sobre created_at seguido de una columna de visualización no relacionada
10. Una solicitud debe pasar en secuencia por dos componentes independientes, y cada uno tiene una disponibilidad del 99.9 %. Aproximadamente, ¿cuál es la disponibilidad combinada, suponiendo que ambos deben funcionar?
99.99 %
99.9 %
99.8001 %
99.9999 %
11. Cuando se agregan o eliminan nodos de caché, ¿qué propiedad hace que el hashing consistente sea útil en comparación con una asignación simple mediante módulo?
Garantiza que cada nodo almacene una copia completa de cada valor
Limita la proporción de claves que deben reasignarse
Ordena todos los valores almacenados en caché según su fecha de creación
Garantiza una carga idéntica incluso cuando unas pocas claves son extremadamente populares
12. Un usuario actualiza un perfil y lo vuelve a consultar inmediatamente, pero la réplica de lectura a veces devuelve el valor anterior porque la replicación es asíncrona. ¿Qué solución ofrece mejor una consistencia de lectura de las propias escrituras?
Dirigir temporalmente las lecturas de ese usuario posteriores a la actualización al servidor principal o a una réplica que se sepa que está actualizada
Elegir al azar una réplica diferente para cada lectura inmediata
Mantener el perfil anterior en caché durante más tiempo
Eliminar la información de versión de los registros de perfil
13. El precio de un producto está almacenado en caché, pero los usuarios deben ver el nuevo precio inmediatamente después de que un administrador lo actualice correctamente. ¿Qué enfoque permite cumplir este requisito de manera más directa?
Aumentar la capacidad de la caché para que se expulsen menos productos
Agregar más réplicas de lectura a la base de datos de productos
Comprimir los registros de productos almacenados en caché antes de guardarlos
Invalidar o actualizar la entrada del producto en caché como parte del flujo de escritura exitosa
14. Un servicio de procesamiento de imágenes recibe breves picos de cargas que superan la cantidad de imágenes que sus trabajadores pueden procesar de inmediato. ¿Cuál es el principal beneficio de colocar una cola duradera entre las cargas y los trabajadores?
Garantiza que todas las imágenes terminen de procesarse al mismo tiempo
Amortigua los picos y permite que los trabajadores consuman las tareas a un ritmo sostenible
Elimina la necesidad de que las operaciones de procesamiento sean seguras ante reintentos
Hace innecesario el almacenamiento permanente de las imágenes cargadas
15. Una API debe permitir picos breves ocasionales y, al mismo tiempo, imponer una tasa promedio de solicitudes a lo largo del tiempo. ¿Qué algoritmo de limitación de tasa admite este comportamiento de manera natural?
Un depósito de tokens con una tasa de reposición y una capacidad definidas
Un retraso fijo estricto antes de cada solicitud aceptada
Un bloqueo permanente después de la primera infracción del límite
Un balanceador de carga por turnos sin contadores de solicitudes
16. Un sitio de noticias ofrece las mismas imágenes y videos a usuarios de todo el mundo. ¿Qué cambio reduce más directamente la latencia de entrega y el tráfico hacia el servidor de origen?
Almacenar todo el contenido multimedia en la base de datos relacional principal
Enviar las solicitudes de contenido multimedia a través de un único servidor de aplicaciones regional
Servir el contenido multimedia almacenable en caché mediante una CDN distribuida geográficamente
Reemplazar la replicación asíncrona por replicación síncrona