Um exemplo simples: antes do cache

O armazenamento em cache (caching) é uma tecnologia baseada em um subsistema de memória do computador. O principal objetivo de um cache é acelerar o computador ao mesmo tempo em que mantém seu preço baixo. O armazenamento em cache permite que realizemos tarefas no computador com maior rapidez.

Para entender a idéia básica por trás de um sistema de cache, vejamos um exemplo super simples que usa um bibliotecário para demonstrar os conceitos de armazenamento em cache. Vamos imaginar o bibliotecário atrás do balcão. Sua função é nos entregar os livros que solicitamos. Para simplificar, digamos que não podemos pegar os livros sozinhos - temos que pedir ao bibliotecário qualquer livro que desejamos ler; ele então o busca nas estantes. Vamos começar com um bibliotecário sem cache.

Chega o primeiro cliente. Ele pede o livro Moby Dick. O bibliotecário vai até as estantes, pega o livro, volta ao balcão e o entrega ao cliente. Depois, o cliente volta e devolve o livro. O bibliotecário pega o livro e o devolve à estante. Depois, ele volta ao balcão e espera o próximo cliente. Digamos que o próximo cliente também pede o Moby Dick. Então, o bibliotecário volta à estante para pegar o livro recentemente manipulado e o entrega ao cliente. Com esse modelo, o bibliotecário tem que realizar um ciclo completo de ida e volta às estantes para buscar cada livro - até mesmo os mais conhecidos, solicitados freqüentemente. Existe um modo de melhorar o desempenho do bibliotecário?

Sim - podemos colocar um cache nele. Na próxima seção, analisaremos esse mesmo exemplo mas, desta vez, o bibliotecário usará um sistema de armazenamento em cache.