Cache em web api

Hoje aprendi: Cache em Web Api usando Memory Cache


Eu estava buscando algo pra representar no meu TCC como uma solução de cache para a minha API. Sabemos que OutputCache pertence ao namespace System.Web.Mvc, portanto, não podemos trabalhar com ele na Web Api. Então me veio a pergunta: O que eu posso usar para aplicar um cache nas operações da minha web api ?

Foi então que encontrei o artigo do Renato Groffe sobre o novo mecanismo de cache do Asp.Net 5 e resolvi testar para mencionar no TCC.

Abri o Visual Studio e criei uma POC simples para entender o comportamento do MemoryCache (que pertence ao namespace System.Runtime.Caching). A POC ficou assim:






Então, criamos um método para configurar o cache utilizando como referencia o MemoryCache.Default. A partir dele configuramos um tempo para expirar o cache, adicionamos os dados que queremos cachear no value do AddOrGetExisting() e retornamos o valor desse método (que é basicamente o que armazenamos em uma execução anterior).

É bem bacana e olhando para os sistemas que desenvolvemos diariamente, certamente podemos observar várias situações onde cabe um cache. Eu curti :)