当前位置: 代码迷 >> ASP.NET >> 缓存解决方案
  详细解决方案

缓存解决方案

热度:9260   发布时间:2013-02-25 00:00:00.0
缓存
想要实现的功能如下
一个请求的到来 根据ID来查询
判断缓存中有没有 
如果有 (更新缓存中实体最后被访问的时间) 就返回  
如有没有 则查数据库 然后放进缓存 然后返回

我现在想设定缓存的释放策略---不想一下子全部释放
当内存不足时 或内存消耗了100M 或过了某段时间

找出很久没有被查找的实体 释放掉

但是
怎么判断 内存的消耗情况
或者到某段时间后,释放掉很久没有被访问的,最近被访问的继续保存在缓存中

还有什么好的解决方案???



------解决方案--------------------------------------------------------
http://www.cnblogs.com/McJeremy/archive/2008/12/01/1344660
------解决方案--------------------------------------------------------
控制缓存中实体的数量 ,比方说一个实体0.1M 那你放进1000 个 ,放到1001个的时候,删除第一个。当然要另外的数据结构来存储个数, linkedlist 应该可以 而且好像还有removeFirst方法, 但是不能控制删除其他的,比如访问率低的~
  相关解决方案