Crear un administrador de cache usando cacheadapter

Utilizar cache en nuestra Api o en nuestro componentes de datos es muy importante ya que es muy común que existan cientos de datos que son consultados constantemente por el usuario y que no se modifican mucho en el tiempo entonces para poder descongestionar la base de datos podemos usar un servidor de cache que responde mas rápido a cualquier requerimiento de datos.

cacheadapter es un nuget en . net (https://www.nuget.org/packages/Glav.CacheAdapter/)  que nos permite administrar de manera fácil y distintos modos para administrar el cache:

1. In Memory cache (config setting=”memory”)
2. ASP.NET web cache (config setting=”web”)
3. Distributed AppFabric cache. (config setting=”AppFabric”)
4. Distributed memcached cache. (config setting=”memcached”)

Invocando entonces  nuestro nuget podemos crear un método para guardar y otro para obtener información que se encuentre en Cache sin importar en que servidor se este guardando:

internal const int INTIME = 3;

/// <summary>
/// Get the data object with identifier
/// </summary>
/// <param name=”strKey”>identifier of the data</param>
/// <returns>return the data</returns>
public static object Get(string strKey)
{
var cacheProvider = AppServices.Cache;

var data = cacheProvider.Get<object>(strKey, DateTime.Now.AddSeconds(INTIME), () => { return null; });

return data;
}

/// <summary>
/// Set in the cache server the value
/// </summary>
/// <typeparam name=”T”>Type of data to Set</typeparam>
/// <param name=”strKey”>identifier of the data</param>
/// <param name=”obj”>object data</param>
/// <param name=”intTimeExpiry”>Time in seconds of Expiry data Defaul:86400 = one day</param>
/// <returns></returns>
public static bool Set<T>(string strKey, T obj, int intTimeExpiry = 86400)
{
try
{
var cacheProvider = AppServices.Cache;

cacheProvider.Add(strKey, DateTime.Now.AddSeconds(intTimeExpiry), obj, null);

return true;
}
catch (Exception)
{
return false;
}
}

En el siguiente Link les dejo el codigo donde pueden encontrar el ejemplo mas completo y ver el CacheManager que cree a partir de cacheAdapter espero les sirva:

https://onedrive.live.com/redir?resid=261445BD18D3146D%21121

Un comentario en «Crear un administrador de cache usando cacheadapter»

  1. Pingback: bean burr grinder

Los comentarios están cerrados.