Aller au contenu principal

1. Introduction

Cette page conserve le texte original de la RFC pour cette section et ajoute les metadonnees de navigation du site de documentation.

Texte original de la RFC

1.  Introduction

La mise en cache HTTP [HTTP-CACHING] fonctionne a la granularite
d'une ressource unique; la fraicheur d'une reponse stockee n'affecte
pas celle des autres. Cette granularite peut rendre la mise en cache
plus efficace -- par exemple lorsqu'une page est composee de nombreux
actifs ayant des exigences differentes en matiere de cache.

Cependant, il existe aussi des cas ou la relation entre des reponses
stockees pourrait etre utilisee pour ameliorer l'efficacite du cache.

Par exemple, il est souvent necessaire d'invalider un ensemble de
ressources liees. Cela peut etre du au fait qu'une requete modifiant
l'etat a des effets secondaires sur d'autres ressources, ou simplement
a une commodite administrative (par exemple, "invalider cette partie
du site"). Le regroupement des reponses fournit une maniere dediee
d'exprimer ces relations, au lieu de s'appuyer sur des elements comme
la structure des URL.

En plus de partager les evenements d'invalidation, les relations
indiquees par le regroupement peuvent aussi etre utilisees par les
caches pour optimiser leur fonctionnement, par exemple pour guider les
algorithmes d'eviction du cache.

La Section 2 introduit un moyen de decrire les relations entre les
reponses stockees dans les caches HTTP, en associant ces reponses a un
ou plusieurs groupes qui refletent ces relations. Elle decrit aussi
comment les caches peuvent utiliser ces informations pour appliquer
des evenements d'invalidation aux membres d'un groupe.

La Section 3 introduit une nouvelle source de tels evenements: un
champ d'en-tete de reponse HTTP permettant a une reponse modifiant
l'etat de declencher l'invalidation d'un groupe.

Ces mecanismes fonctionnent au sein d'un cache unique, sur les
reponses stockees associees a un seul serveur d'origine (voir la
Section 2.1). Ils ne traitent pas les problemes de synchronisation
d'etat entre plusieurs caches, par exemple dans une hierarchie ou un
maillage, et ne facilitent pas non plus l'association de reponses
stockees provenant d'origines distinctes.