Una caché web, también denominada servidor proxy, es una entidad de red que satisface solicitudes HTTP en nombre de un servidor web de origen.
La caché web dispone de su propio almacenamiento en disco y mantiene en él copias de los objetos solicitados recientemente.
El navegador de un usuario se puede configurar de modo que todas sus solicitudes HTTP se dirijan en primer lugar a la caché web.
Por ejemplo, suponga que un navegador está solicitando el objeto http://www.unaEscuela.edu/campus.gif.
- El navegador establece una conexión TCP con la caché web y envía una solicitud HTTP para el
objeto a la caché web.
- La caché web comprueba si tiene una copia del objeto almacenada localmente. Si la tiene, la
caché web devuelve el objeto dentro de un mensaje de respuesta HTTP al navegador del cliente.
- Si la caché web no tiene el objeto, abre una conexión TCP con el servidor de origen, es decir,
con www.unaEscuela.edu. La caché web envía entonces una solicitud HTTP para obtener el objeto a través de la conexión TCP caché-servidor. Después de recibir esta solicitud, el
servidor de origen envía el objeto dentro de un mensaje de respuesta HTTP a la caché web.
- Cuando la caché web recibe el objeto, almacena una copia en su dispositivo de almacenamiento local y envía una copia, dentro de un mensaje de respuesta HTTP, al navegador del cliente (a través de la conexión TCP existente entre el navegador del cliente y la caché web).
Ventajas del proxy:
- Puede reducir sustancialmente el tiempo de respuesta a la solicitud de un cliente, especialmente si el ancho de banda cuello de botella entre el cliente y el servidor
de origen es mucho menor que el ancho de banda cuello de botella entre el cliente y la caché.
- Las cachés web pueden reducir sustancialmente el tráfico en el enlace de acceso a Internet de una institución.
GET Condicional
La copia de un objeto que reside en la caché puede estar desactualizada.
El objeto almacenado en el servidor web puede haber sido modificado desde que la copia fue almacenada en la caché del cliente
El mecanismo GET condicional permite a la caché verificar que sus objetos están actualizados.
GET /fruit/kiwi.gif HTTP/1.1
Host: www.exotiquecuisine.com
If-modified-since: Wed, 9 Sep 2015 09:23:24
La línea de cabecera If-modified-since: es exactamente igual al valor de la línea de cabecera Last-Modified cuando recibió la respuesta del servidor origen.