La mise en cache est un terme utilisé en informatique. L'idée derrière un cache (prononcé "cash" /ˈkæʃ/ KASH ) est très simple : Très souvent, l'obtention d'un résultat pour un calcul prend beaucoup de temps, c'est pourquoi le stockage du résultat est généralement une bonne idée. Deux types de supports de stockage sont utilisés : L'un est généralement assez gros, mais son accès est "lent" ; l'autre est beaucoup plus rapide, mais il est généralement petit. L'idée de base de la mise en cache est d'utiliser le support qui est rapide d'accès pour avoir des copies des données. Il n'y a pas de différence entre la copie et l'original. L'accès aux données originales peut prendre beaucoup de temps, ou être coûteux (par exemple : les résultats d'un problème difficile qui prend beaucoup de temps à résoudre). C'est pourquoi il est beaucoup plus "économique" d'utiliser simplement la copie des données du cache. Autrement dit, un cache est une zone de stockage temporaire qui contient des copies de données qui sont souvent utilisées. Lorsqu'une copie des données se trouve dans ce cache, il est plus rapide d'utiliser cette copie plutôt que de récupérer ou de recalculer les données originales. Le temps moyen nécessaire pour accéder aux données sera ainsi plus court. Mettre une nouvelle valeur dans un cache signifie souvent qu'une ancienne valeur doit être remplacée. Il existe différentes idées (généralement appelées "stratégies") sur la manière de sélectionner la valeur à remplacer.
Un tampon est très similaire à une cache. Il est différent en ce sens que le client qui accède aux données dans un tampon sait qu'il existe un tampon ; le tampon est géré par l'application. Avec un cache, le client qui accède aux données n'a pas besoin de savoir qu'il y a un cache.
Les applications informatiques typiques accèdent aux données de manière très similaire. Supposons que les données soient structurées en "blocs", auxquels on peut accéder individuellement. Lorsqu'une application accède à un bloc, il est également très probable qu'elle accède (ou fasse référence) à un bloc qui est "proche" du bloc d'origine. C'est ce que l'on appelle la localité de référence. Il existe différents types de ces "localités". La localité de référence est l'une des raisons pour lesquelles les caches fonctionnent bien dans de nombreux domaines de l'informatique.
Pour bien fonctionner, les caches sont petites, par rapport à la quantité totale de données. Plus la mémoire cache est grande, plus il faut de temps pour consulter une entrée. Les caches plus grandes sont également plus coûteuses à construire.

