Un caché web (o caché HTTP ) es un sistema para optimizar la World Wide Web. Se implementa tanto en el lado del cliente como en el lado del servidor. El almacenamiento en caché de archivos multimedia y de otro tipo puede generar un menor retraso general al navegar por la Web. [1] [2]
Un caché de reenvío es un caché fuera de la red del servidor web , por ejemplo, en el navegador web del cliente , en un ISP o dentro de una red corporativa. [3] Un caché de reenvío con reconocimiento de red solo almacena en caché elementos a los que se accede con frecuencia. [4] Un servidor proxy ubicado entre el cliente y el servidor web puede evaluar los encabezados HTTP y elegir si almacenar contenido web.
Una caché inversa se ubica frente a uno o más servidores web, acelerando las solicitudes de Internet y reduciendo la carga máxima del servidor. Suele tratarse de una red de distribución de contenido (CDN) que conserva copias de contenido web en varios puntos de una red.
El Protocolo de transferencia de hipertexto (HTTP) define tres mecanismos básicos para controlar los cachés: frescura, validación e invalidación. [5] Esto se especifica en el encabezado de los mensajes de respuesta HTTP del servidor.
La actualización permite utilizar una respuesta sin tener que volver a comprobarla en el servidor de origen, y tanto el servidor como el cliente pueden controlarla. Por ejemplo, el encabezado de respuesta Expires indica la fecha en la que el documento se vuelve obsoleto, y la directiva Cache-Control: max-age indica al caché durante cuántos segundos la respuesta está actualizada.
La validación se puede utilizar para comprobar si una respuesta almacenada en caché sigue siendo válida después de que se vuelva obsoleta. Por ejemplo, si la respuesta tiene un encabezado Last-Modified, un caché puede realizar una solicitud condicional utilizando el encabezado If-Modified-Since para ver si ha cambiado. El mecanismo ETag (etiqueta de entidad) también permite una validación tanto fuerte como débil.
La invalidación suele ser un efecto secundario de otra solicitud que pasa por la memoria caché. Por ejemplo, si una URL asociada a una respuesta almacenada en caché recibe posteriormente una solicitud POST, PUT o DELETE, la respuesta almacenada en caché se invalidará. Muchas CDN y fabricantes de equipos de red han reemplazado este control de caché HTTP estándar por el almacenamiento en caché dinámico.
En 1998, la Ley de Derechos de Autor del Milenio Digital agregó reglas al Código de los Estados Unidos ( 17 USC §: 512 ) que eximen a los operadores de sistemas de la responsabilidad de derechos de autor a los efectos del almacenamiento en caché.
Esta es una lista de software de almacenamiento en caché web del lado del servidor.
Nombre | Sistema operativo | Modo de avance | Modo inverso | Licencia | ||
---|---|---|---|---|---|---|
Ventanas | Similar a Unix | Otro | ||||
Servidor HTTP Apache | Sí | Sistema operativo X, Linux, Unix, FreeBSD, Solaris, Novell NetWare | OS/2, TPF, OpenVMS y eComStation | Sí | Apache 2.0 | |
Control de caché dinámico de aiScaler | No | Linux | No | Propiedad | ||
Caja de caché de ApplianSys | No | Linux | No | Propiedad | ||
Proxy de Blue CoatSG | No | No | SGOS | Sí | Sí | Propiedad |
Nginx | Sí | Linux , BSD , OS X , Solaris , AIX , HP-UX | Sí | Sí | Sí | Similar a BSD de 2 cláusulas |
Puerta de enlace de administración de amenazas de Microsoft Forefront | Sí | No | No | Sí | Sí | Propiedad |
Polipo | Sí | Sistema operativo X , Linux , OpenWrt , FreeBSD | ? | Sí | Sí | Licencia MIT |
Calamar | Sí | Linux | ? | Sí | Sí | Licencia pública general (GPL) |
Servidor de tráfico Apache | ? | Linux | ? | Sí | Sí | Apache 2.0 |
Desenredar | No | Linux | No | Sí | Sí | Propiedad |
Barniz | No | Linux | No | Necesita un VMOD | Sí | BSD |
Puerta de acceso a la ventana | Sí | No | No | Sí | Sí | Propietario (Gratis para 8 usuarios) |
Numero | No | Linux | No | Sí | Sí | Licencia pública general (GPL) |
Pasarela web McAfee | No | Sistema operativo McAfee Linux | No | Sí | Sí | Propiedad |