web开发中有效合理使用缓存可以提高程序性能及减少数据库服务器压力起到一定的作用,一下为缓存设置、读取的一个简单的通用类:
public class DataCache
{
public static object GetCache(string key)
{
return HttpRuntime.Cache.Get(key);
}
/// <summary>
/// 滑动过期缓存
/// </summary>
public static void SetSlidingCache(string key, object value, int cacheTime = 20)
{
HttpRuntime.Cache.Insert(key, value, null, Cache.NoAbsoluteExpiration, TimeSpan.FromMinutes(cacheTime));
}
/// <summary>
/// 绝对过期缓存
/// </summary>
public static void SetCache(string key, object value, int cacheTime = 20)
{
HttpRuntime.Cache.Insert(key, value, null, DateTime.Now.AddMinutes(cacheTime), TimeSpan.Zero);
}
/// <summary>
/// 绝对过期缓存(onRemoveCallback:过期移除后回调函数)
/// </summary>
public static void SetCache(string key, object value, int cacheTime, CacheItemRemovedCallback onRemoveCallback)
{
HttpRuntime.Cache.Insert(key, value, null, DateTime.Now.AddMinutes(cacheTime), Cache.NoSlidingExpiration, CacheItemPriority.High, onRemoveCallback);
}
public static void RemoveCache(string key)
{
HttpRuntime.Cache.Remove(key);
}
}