Guía de entrevistas técnicas de Arquitectura de Software

Accede/Registrate para Descargar tu Guía

Lista de Preguntas


¿Qué técnicas de caché existen?

Existen varias técnicas y estrategias relacionadas con el uso eficiente de la caché en arquitecturas de software. A continuación, se describen algunas de las técnicas comunes utilizadas para mejorar el rendimiento y la eficiencia del caché:

Caché por Escritura (Write-Through Cache): En esta estrategia, cada escritura en la memoria principal también se realiza en el caché. Garantiza que la memoria caché y la memoria principal siempre tengan datos coherentes, pero puede resultar en un mayor tráfico de escritura.

Caché por Lectura (Read-Through Cache): Cuando un dato se solicita y no está en caché, se carga desde la memoria principal y se almacena en caché para futuras referencias. Este enfoque mejora el rendimiento al reducir la necesidad de acceder repetidamente a la memoria principal para los mismos datos.

Caché por Escritura Retardada (Write-Behind Cache): En lugar de escribir inmediatamente en la memoria principal al actualizar el caché, las escrituras se acumulan y se escriben en la memoria principal en lotes. Esto reduce el tráfico de escritura, pero puede introducir una brecha temporal en la coherencia de los datos.

Política de Reemplazo de Caché (Cache Replacement Policy): Define cómo se selecciona el elemento que será reemplazado cuando la caché alcanza su capacidad máxima. Ejemplos de políticas incluyen LRU (Least Recently Used, el menos recientemente utilizado), FIFO (First In, First Out, el primero en entrar, primero en salir), y LFU (Least Frequently Used, el menos frecuentemente utilizado).

Caché por Inserción (Write-Allocation): Cuando se realiza una escritura, se trae el bloque completo de datos a la caché antes de modificarlo. Esto puede reducir la necesidad de futuras lecturas desde la memoria principal.

Caché por No-Inserción (Write-Non-Allocation): Solo se modifican los datos en la memoria principal sin traer el bloque completo a la caché. Puede reducir el tráfico de datos, pero aumenta la necesidad de futuras lecturas desde la memoria principal.

Prefetching: Se anticipa a las futuras necesidades de datos y se cargan en caché antes de que se soliciten explícitamente. Puede ser basado en hardware o software.

Caché Distribuida: Utiliza múltiples cachés distribuidos en diferentes partes de un sistema para mejorar la velocidad de acceso y reducir la carga en una única caché central.

Whatsapp Mentores Tech