Olá pessoal. Hoje mostrei para um colega aqui no escritório como implementar o Cache Aside Pattern utilizando o “Velocity”.
A idéia desse pattern é bem simples. Tenta-se primeiramente buscar um dado do cache. Caso o dado não exista no cache, busca-se o dado do Banco de Dados e insere-se esse dado no cache.
1: // Busca-se um dado do Cache
2: Veiculo VeiculoObj =
(Veiculo)catalog.Get("veiculo-101");
3:
4: // Se não está presente no Cache
5: if (VeiculoObj == null)
6: {
7: // Lê-se do Banco de Dados
8: VeiculoObj = ReadFromDatabase();
9:
10: // Popula-se o Cache
11: catalog.Put("veiculo-101", VeiculoObj);
12: }
Em versões futuras teremos o suporte de read-through/write-behind que entrarei em detalhes em um post futuro.
Até o mais,
Daibert
|