¿Qué es la caché y para qué se usa?

Si alguna vez solucionaste un problema en tu computadora o limpiaste tu historial de navegación, lo más probable es que hayas encontrado consejos relacionados con la caché.

Es un consejo atemporal: si un sitio web no se carga correctamente, borra tu caché. Todos lo hemos hecho, hemos notado que las cosas funcionan de nuevo y hemos procedido a no pensar en el caché del navegador nunca más.

Pero, ¿qué es un caché y para qué se usa? Aquí encontrarás todo lo que debes saber sobre los cachés y por qué son cruciales para la tecnología moderna.

¿Qué es una caché?

Una caché es una ubicación de almacenamiento de datos temporal que almacena copias de datos o archivos a los que se accede con frecuencia para proporcionar un acceso más rápido al software o hardware. Las computadoras, los dispositivos móviles, los navegadores web y otras aplicaciones utilizan la memoria caché para acelerar la recuperación de datos.

Los cachés permiten un acceso más rápido a estos datos al eliminar la necesidad de recargarlos cada vez que el dispositivo / aplicación los necesita. Los datos almacenados en caché son reutilizables y se pueden recuperar directamente.

Es el lugar donde tu navegador almacena imágenes, código y otros archivos para evitar volver a descargarlos repetidamente. Tu navegador funcionaría mucho más lento sin esta función, porque cada sitio que abriste requeriría volver a descargar toneladas de archivos. El logotipo, sí, pero también las imágenes de fondo, las fuentes y un montón de otras cosas que suenan técnicas como CSS, HTML y JavaScript. El caché almacena todos estos localmente, para ahorrar ancho de banda y acelerar tu navegación.

En términos de cómo esto afecta tu día a día, hay tres áreas principales en las que los cachés juegan un papel importante:

Dispositivos y software

Los cachés se encuentran tanto en software como en hardware. La CPU, o unidad central de procesamiento: el componente central responsable de procesar la información del software en tu computadora de escritorio, computadora portátil, teléfono inteligente o tableta: tiene su propia caché.

Una caché de CPU es un pequeño bloque de memoria diseñado para ayudar a la CPU a recuperar fácilmente la información de uso frecuente. Almacena datos que la memoria principal de tu dispositivo usa para ejecutar instrucciones mucho más rápido que si tuviera que cargar cada bit de información solo cuando se solicitó.

Navegadores web

Cada navegador web, ya sea Microsoft Edge, Chrome, Firefox o Safari, mantiene su propia caché.

La memoria caché del navegador almacena los archivos que necesita tu navegador para mostrar los sitios web que visitas. Esto incluye elementos como el archivo HTML que describe el sitio, junto con hojas de estilo CSS, JavaScript, cookies e imágenes.

Por ejemplo, cuando visitas Amazon, descarga todas las imágenes asociadas con las páginas de productos que visitas, el HTML y otros archivos de secuencia de comandos necesarios para representar las páginas, y la información de personalización, como tu información de inicio de sesión y el contenido de tu carrito de compras.

Es por eso que si borras la memoria caché de tu navegador, los sitios minoristas requerirán que vuelvas a iniciar sesión y reajustes tu configuración.

Aplicaciones

Las aplicaciones también suelen mantener su propia caché. Al igual que los navegadores, las aplicaciones guardan archivos y datos que consideran importantes para poder volver a cargar rápidamente la información según sea necesario. Sin embargo, cada aplicación es diferente, por lo que el tipo de datos que almacena en caché variará, pero puede incluir imágenes, miniaturas de video, historial de búsqueda y otras preferencias del usuario.

¿Cómo funciona?

Una caché funciona almacenando temporalmente los datos de uso frecuente, lo que proporciona a los dispositivos y aplicaciones una forma más rápida de acceder a ellos.

Los cachés almacenan copias de datos que están fácilmente disponibles y son de tamaño pequeño. Esta funcionalidad elimina la necesidad de buscar en bancos de memoria más grandes, lo que lleva mucho más tiempo.

La forma precisa en que funciona una caché depende del tipo de software o hardware que lo esté utilizando.

El almacenamiento en caché de memoria funciona reservando primero una parte de la RAM para utilizarla como caché. Cuando una aplicación intenta leer datos, generalmente de un sistema de almacenamiento de datos como una base de datos, verifica si el registro deseado ya existe en la caché. Si lo hace, la aplicación leerá los datos de la caché, eliminando así el acceso más lento a la base de datos.

Si el registro deseado no está en la caché, la aplicación lee el registro de la fuente. Cuando recupera esos datos, también escribe los datos en el caché para que cuando la aplicación necesite esos mismos datos en el futuro, pueda obtenerlos rápidamente del caché.

Dado que el caché tiene un tamaño limitado, eventualmente algunos datos que ya están en el caché deberán eliminarse para dejar espacio para los datos nuevos a los que la aplicación accedió más recientemente. Esto significa que el sistema de almacenamiento en caché necesita una estrategia sobre qué registros eliminar para hacer espacio. La estrategia dependerá de la naturaleza de los accesos a los datos de la aplicación y, por lo general, intentará eliminar los registros a los que no se espera volver a acceder pronto.

Por ejemplo, una estrategia de uso menos reciente eliminará el registro cuyo último acceso fue antes que cualquier otro registro en la caché. El supuesto aquí es que si ha pasado mucho tiempo desde que se accedió al registro, es probable que no se vuelva a acceder pronto. O para decirlo de otra manera, los registros que se utilizaron más recientemente probablemente se volverán a utilizar pronto.

Una estrategia de uso menos frecuente implica rastrear el número de accesos de cada registro en la caché y eliminar el registro con la menor cantidad de accesos. El supuesto aquí es que un registro que se usa con poca frecuencia probablemente no se volverá a usar pronto.

Tipos de cachés

Muchos dispositivos y tecnologías diferentes utilizan el almacenamiento en caché para optimizar el rendimiento del sistema. La forma en que usan y almacenan la caché varía entre dispositivos.

A continuación se muestran ejemplos de los principales tipos de cachés.

Caché de CPU (unidad central de procesamiento)

Las computadoras de escritorio, portátiles, teléfonos inteligentes y tabletas utilizan unidades centrales de procesamiento (CPU) para procesar y ejecutar instrucciones.

Estos dispositivos necesitan acceso frecuente a datos específicos para ejecutar procesos y aplicaciones de manera eficiente. Usan memoria interna de acceso aleatorio (RAM) para acceder a estos datos más rápido.

La RAM almacena temporalmente los datos que la CPU utiliza activamente para ejecutar los procesos actuales.

Sin RAM, tales dispositivos, por ejemplo, una computadora, tendrían que acceder a estos datos desde otros componentes como el disco duro o la unidad de estado sólido (SSD), que ofrecen almacenamiento a más largo plazo pero también son mucho más lentos.

Hay dos tipos de RAM: RAM dinámica (DRAM) y RAM estática (SRAM).

La DRAM almacena la memoria utilizando condensadores que deben actualizarse constantemente para retener los datos. Como estos condensadores funcionan con electricidad, la DRAM pierde sus datos cada vez que se apaga la computadora.

La SRAM no necesita actualizarse constantemente, lo que la hace mucho más rápida y cara que la DRAM. SRAM se utiliza para la memoria caché de la CPU.

Las computadoras usan la memoria caché de la CPU para funcionar de manera más eficiente. Una memoria caché de CPU es un chip de memoria que almacena temporalmente datos a los que la CPU accede con frecuencia desde la RAM.

La CPU comprueba primero la memoria caché cuando necesita acceder a datos para procesos en ejecución activa. Un ‘acierto de caché’ ocurre cuando los datos requeridos se almacenan en caché, optimizando el rendimiento.

Se produce un «error de caché» cuando los datos no se almacenan en caché. Las pérdidas de caché provocan latencia, ya que la CPU debe acceder a los datos más abajo en la jerarquía de memoria, por ejemplo, desde la RAM.

Jerarquía de la memoria

La jerarquía de la memoria estructura la memoria de la computadora en función de su tiempo de respuesta. La caché está en la parte superior de la pirámide, ya que es la que funciona más rápido.

Su velocidad se debe en parte al hecho de que se encuentra mucho más cerca de la CPU que otros tipos de memoria. Incluso se puede integrar directamente en el chip de la CPU. Los cachés también tienen la capacidad de almacenamiento más pequeña, lo que reduce la latencia.

El coste y la velocidad de cada tipo de memoria dependen de su tamaño de capacidad.

Niveles de caché

La caché de la CPU se clasifica en tres niveles diferentes: Nivel 1 (L1), Nivel 2 (L2) y Nivel 3 (L3). Los niveles están ordenados desde la velocidad más alta y el tamaño más pequeño hasta la velocidad más baja y el tamaño más grande.

  • Caché de nivel 1: el caché L1 generalmente está integrado en el chip de la CPU y ofrece la mayor velocidad. La CPU accede a la caché L1 con mayor frecuencia.
  • Caché de nivel 2: L2 se encuentra entre la CPU y la RAM y es más grande que el caché L1, pero más lento. La CPU accede a L2 cuando los datos requeridos no se encuentran en L1.
  • Caché de nivel 3: L3 es el nivel de caché más lento y el más grande. La CPU accede a L3 cuando los datos requeridos no se encuentran en L1 o L2. Si hay una falta de caché, la CPU busca la RAM a continuación, seguida de la memoria principal o la caché de disco.

Web Cache (o HTTP Cache)

Los cachés web almacenan copias de los datos del sitio web para optimizar el rendimiento del sitio web a través de encabezados HTTP que contienen instrucciones de almacenamiento en caché para solicitudes y respuestas web.

Hay dos tipos principales de almacenamiento en caché web:

Caché de cliente web (o caché de navegador web)

El almacenamiento en caché del navegador web permite que los sitios web se carguen más rápido al almacenar el contenido al que se accede con frecuencia desde los servidores web. La primera vez que un usuario (cliente) visita un sitio web, el navegador debe recuperar todos los activos web (por ejemplo, CSS, HTML, JavaScript y archivos de imagen) del servidor de origen.

La caché web luego almacena copias de estos datos localmente, por ejemplo, en el disco duro o SSD. La próxima vez que el usuario visite el sitio, el navegador recuperará los activos web del caché en lugar del servidor de origen.

Recuperar estos activos localmente es mucho más rápido que solicitar datos del servidor de origen nuevamente. El navegador solo necesita solicitar contenido actualizado del servidor web, lo que reduce la congestión de la red y mejora la capacidad de respuesta.

Los navegadores utilizan encabezados de caché HTTP para determinar políticas y algoritmos de almacenamiento en caché como Time to Live (TTL). TTL es el tiempo que se puede entregar el contenido a través de la caché antes de que los activos caduquen y deban recuperarse del servidor web nuevamente.

Caché del servidor web

El almacenamiento en caché del servidor web funciona de manera similar al almacenamiento en caché del navegador web, excepto que el caché se encuentra en el lado del servidor en lugar del lado del cliente. Los servidores web pueden usar cachés de proxy inverso como Apache y Nginx para almacenar copias de activos web desde el servidor para facilitar las solicitudes de los usuarios.

Al igual que el almacenamiento en caché del navegador, el almacenamiento en caché del servidor web permite que los sitios web se carguen más rápido ya que el usuario no necesita acceder a los datos directamente desde el servidor web. El almacenamiento en caché web también reduce la carga en el servidor web, optimizando el rendimiento y la experiencia del usuario.

Caché de base de datos

La mayoría de las bases de datos, como MongoDB y MySQL, utilizan el almacenamiento en caché interno para eliminar las consultas repetitivas de la base de datos. Las bases de datos pueden almacenar en caché las consultas de búsqueda más recientes para permitir tiempos de recuperación más rápidos.

El almacenamiento en caché de la base de datos también alivia la presión de la propia base de datos, ya que no necesita procesar las mismas consultas de forma consecutiva.

Caché de Content Delivery Network (CDN)

Una red de entrega de contenido (CDN) es una red de servidores proxy distribuidos geográficamente que ayudan a mejorar los tiempos de carga del sitio web al almacenar el contenido más cerca de las ubicaciones de IP de los usuarios.

Cuando un usuario solicita contenido de un servidor web, el proxy responderá al usuario en nombre del servidor web si hay una copia en caché disponible.

Los servidores proxy reducen la latencia y la cantidad de solicitudes que recibe el servidor de origen al interceptar las solicitudes de los usuarios.

Caché del sistema de nombres de dominio (DNS)

Cuando un usuario escribe un dominio, el navegador web utilizará el sistema de resolución de códigos auxiliar del sistema operativo del usuario para traducir el nombre de dominio del sitio a una dirección IP. Si el solucionador de stub no conoce la traducción, transmitirá la solicitud de datos de DNS a solucionadores recursivos más complicados, que a menudo son operados por proveedores de servicios de Internet (ISP), gobiernos y organizaciones como Google, OpenDNS y Quad9.

Una vez que el resolutor recursivo tiene la solicitud del usuario, envía sus propias solicitudes de DNS a múltiples servidores de nombres autorizados hasta que pueda encontrar una respuesta definitiva.

Los servidores de nombres de dominio mantienen un directorio de nombres de dominio y los traducen a direcciones IP, al igual que una guía telefónica normal traduce nombres a números de teléfono.

El solucionador de stub y los solucionadores recursivos almacenarán en caché la traducción del nombre de dominio a la dirección IP para mejorar el rendimiento. La próxima vez que un usuario visite un sitio web, no es necesario que consulte los servidores de nombres durante un cierto período de tiempo, conocido como el tiempo de vida (TTL). Cuando expira el TTL, el proceso se repite.

Beneficios

Los principales beneficios de la caché son:

Velocidades mejoradas

El almacenamiento en caché permite tiempos de carga más rápidos, ya que las copias de los datos a los que se accede con frecuencia se almacenan localmente y están disponibles para el usuario. Por ejemplo, los cachés del navegador web almacenan activos web localmente, lo que es más rápido que realizar solicitudes repetidas del servidor web.

Reducción de la congestión de la red

El almacenamiento en caché reduce la congestión de la red en dispositivos como servidores web y bases de datos, ya que los usuarios pueden acceder a copias locales de los datos solicitados. Al reducir el número de solicitudes de base de datos / servidor, el almacenamiento en caché reduce la latencia y mejora el rendimiento del sistema.

Acceso sin conexión

Los cachés pueden permitir a los usuarios acceder a páginas web y otros recursos en línea como aplicaciones móviles sin una conexión a Internet al almacenar localmente los datos a los que se accede con frecuencia.

Inconvenientes

Pero la caché también tiene inconvenientes como:

Problemas de desempeño

A veces, los archivos temporales no se guardan / abren correctamente desde un caché. Los archivos de caché dañados a menudo provocan problemas de rendimiento, lo que hace que las aplicaciones o las páginas web se bloqueen o muestren elementos incorrectamente.

Actualizaciones retrasadas

Aunque las memorias caché solo deberían ofrecer almacenamiento temporal de datos reutilizables, a veces contienen versiones anteriores de datos que se han actualizado desde entonces, por ejemplo, en una página web. En este caso, el usuario deberá borrar la memoria caché de su navegador para permitir que se muestre la versión más reciente.

Riesgos de ciberseguridad

A medida que cada caché almacena copias de los datos usados ​​recientemente, aumentan las superficies de ataque de los usuarios, exponiéndolos a un mayor riesgo cibernético.

Por ejemplo, las cachés del navegador web almacenan cookies, historial de transacciones, información de identificación personal y otros datos confidenciales como nombres de usuario y contraseñas. Esta información se puede explotar fácilmente a través de violaciones de datos, ya que incluso las cachés HTTPS no almacenan versiones encriptadas de archivos localmente. El uso de redes WiFi públicas sin borrar la memoria caché del navegador aumenta esta vulnerabilidad, ya que a menudo se ejecutan con una seguridad de red deficiente.

Las cachés del sistema de nombres de dominio (DNS) también son vulnerables a ataques cibernéticos como el envenenamiento de la caché de DNS (o suplantación de DNS). El envenenamiento de la caché de DNS ocurre cuando se introduce información falsa de DNS en la caché de un resolutor de DNS. Esta información hace que las consultas de DNS devuelvan una respuesta incorrecta, lo que comúnmente redirige a los usuarios de un sitio web legítimo a un sitio web malicioso diseñado para robar información confidencial o instalar malware.

Cookies frente a caché: ¿cuál es la diferencia?

En la mayoría de los navegadores, las opciones para borrar el caché y borrar las cookies están en el mismo lugar, pero no son lo mismo.

  • Tu caché almacena archivos descargados directamente de los sitios web que visitas: fuentes, imágenes, ese tipo de cosas. Los archivos en tu caché no son tan diferentes de los archivos en el caché de otra persona que visita los mismos sitios web que tu.
  • Las cookies son diferentes: almacenan información sobre ti y las cosas que has hecho en línea. Si navegas por una tienda en línea y agregas un montón de cosas a una lista de compras, eso se guarda usando una cookie. Las cookies también realizan un seguimiento del sitio en el que has iniciado sesión, por lo que, si borras las cookies, deberás volver a iniciar sesión en todas tus cuentas. Limpiar tu caché no afecta nada de esto.

¿Debo borrar mi caché?

Entonces, si los datos almacenados en caché no son tan importantes, ¿es seguro borrarlos? Bueno eso depende.

Si encuentras que la memoria de tu dispositivo móvil se está agotando de los datos almacenados en caché, probablemente deberías borrarlo. Después de todo, los datos almacenados en caché no son vitales para el rendimiento de una aplicación o sitio web; solo significa que los archivos que contiene deberán volver a cargarse.

Aunque, limpiar constantemente tu caché no es una solución permanente, ya que eventualmente volverás a abrir aplicaciones y volverás a visitar sitios web en algún momento. Los datos se volverán a almacenar en caché y el ciclo continuará.

Si tienes tan poca memoria, considera eliminar mensajes de texto, imágenes o archivos de video antiguos en tu dispositivo. También vale la pena buscar en el almacenamiento de archivos basado en la nube y compartir software como Google Drive o Dropbox si deseas conservar tus archivos. Estas opciones suelen ofrecer una cantidad gratuita de espacio en la nube.

¿Qué hace el borrado de caché?

Ahora tienes una comprensión bastante profunda de qué son los datos en caché, dónde se almacenan y su importancia en lo que respecta al rendimiento del dispositivo.

No está mal borrar los datos almacenados en caché de vez en cuando. Algunos se refieren a estos datos como «archivos basura», lo que significa que simplemente se acumulan y almacenan en tu dispositivo. Borrar el caché ayuda a mantener las cosas limpias, pero no confíes en él como un método sólido para crear nuevo espacio.

Las ventajas de borrar el caché incluyen liberar espacio de almacenamiento anterior en tu computadora y eliminar cualquier archivo que pueda estar causando un mal comportamiento.

Desafortunadamente, borrar el caché también elimina los archivos que están diseñados para hacer que tu computadora funcione de manera más eficiente. Por ejemplo, borrar la memoria caché de un navegador generalmente significa que tendrás que iniciar sesión en todos tus sitios web favoritos de nuevo y perderás cualquier personalización especial que tuvieras allí, incluido el contenido de los carritos o cestas de la compra.

Cómo borrar los datos almacenados en caché

Si estás decidido a borrar tu caché, aquí te mostramos cómo hacerlo en diferentes sistemas operativos :

iPhone

Sigue estos sencillos pasos para borrar el caché en dispositivos iOS:

  • Ve a Configuración> General> Almacenamiento de iPhone
  • Desde aquí, tienes algunas opciones. Tu primera opción es borrar todo el caché de las aplicaciones que nunca o casi nunca usas. Esto se encuentra bajo la recomendación “Descargar aplicaciones no utilizadas. La segunda opción es desplazarse hacia abajo y tocar aplicaciones individuales con una gran cantidad de datos almacenados en caché en tu dispositivo. ¿Cómo puedes saber esto? Apple enumerará estas aplicaciones desde el uso de memoria más alto hasta el más bajo.
  • Simplemente descarga la aplicación individual para liberar espacio temporal en tu dispositivo.

Android

Puedes borrar el caché en dispositivos Android de las siguientes maneras.

  • Borrar caché en la aplicación Chrome:
    • Abre la aplicación Google Chrome en tu teléfono o tableta Android.
    • Toca Más en los tres puntos en la esquina superior derecha de la página web.
    • Toca Historial y luego Borrar datos de navegación y elige un rango de tiempo en la parte superior.
    • Selecciona un intervalo de tiempo y marca las casillas junto a «Archivos de imagen en caché».
    • Pulsa Borrar datos para liberar la memoria caché del navegador en Chrome.
  • Borrar caché de la aplicación: Tomemos el Samsung Galaxy Note 8 como ejemplo para comprender cómo borrar el caché de la aplicación de los dispositivos Android.
    • Abre el menú Configuración en tu teléfono Android y selecciona Aplicaciones de la lista
    • Dependiendo de tu versión de Android, es posible que tengas una opción para abrir aplicaciones instaladas, todas las aplicaciones, habilitadas, deshabilitadas y otras aplicaciones. Selecciona Todo si usas Samsung Galaxy Note 8.
    • Elige la opción adecuada y navega hasta la aplicación cuya caché necesitas borrar
    • Selecciona la aplicación y toca Almacenamiento en la lista de opciones dentro de los datos de la aplicación
    • Toca Borrar caché para liberar espacio en tu dispositivo.

Firefox

Es bastante fácil borrar la caché de Firefox. Sigue estos pasos:

  • Selecciona las opciones haciendo clic en Menú en la página de Firefox.
  • Toca el panel Privacidad y seguridad
  • Haz clic en Borrar datos en la pestaña Cookies y datos del sitio
  • Elimina las marcas de verificación delante de todas las demás opciones y marca Contenido web en caché.