Cache em ASP.NET MVC

Um recurso bem interessante do ASP.NET MVC são os atributos de Cache, ou OutputCacheAttribute.

E que diabos são esses atributos de cache?

Bem, todo programador (pelo menos os que se preocupam com aquilo que estão desenvolvendo) já passou algumas horas refletindo sobre desempenho e escabilidade de sua aplicação (quem pensa muito nisso são os railers, hehe), e cache entra diretamente nesse assunto. Algumas Views de nossas aplicações, em certas situações não necessitam serem processadas a cada request. Por exemplo, imagine uma loja virtual, os produtos dessa loja certamente não sofrem atualizações constantes, por isso, não há a necessidade de consultar seu banco de dados a cada request.

Em um exemplo bem simples, crie um projeto MVC e um controller qualquer. Crie uma action como o exemplo:

O Atributo [OutputCache] sob a action faz com ela seja cacheada por um periodo, no nosso exemplo, 60 segundos. Para ver funcionando, na View desta action crie uma saída datetime por exemplo e atualize sua view no browser, você vai ver que a view só será atualizada após 60 segundos.

Mas o que acontece por baixo dos panos. O atributo [OutputCache] adiciona algumas instruções ao cabeçalho Http da View.

Sem Cache

Com Cache

A atributo [OutputCache] tem mais parametros, mas é assunto para outro post, mas vale a pesquisa.

[]´s

Trackback

no comment untill now

Add your comment now