xUtils的BitmapUtils模块: 加载bitmap的时候无需考虑bitmap加载过程中出现的oom和android容器快速滑动时候出现的图片错位等现象; 支持加载网络图片和本地图片; 内存管理使用lru算法,更好的管理bitmap内存; 可配置线程加载线程数量,缓存大小,缓存路径,加载显示 ...
分类:
移动开发 时间:
2016-11-09 15:11:04
阅读次数:
214
在前一篇文章中通过leetcode的一道题目了解了LRU算法的具体设计思路,下面继续来探讨一下另外两种常见的Cache算法:FIFO、LFU 1.FIFO算法 FIFO(First in First out),先进先出。其实在操作系统的设计理念中很多地方都利用到了先进先出的思想,比如作业调度(先来先 ...
分类:
编程语言 时间:
2016-11-04 17:00:44
阅读次数:
257
一、memcached工作原理基本概念:slab,page,chunk。slab,是一个逻辑概念。它是在启动memcached实例的时候预处理好的,每个slab对应一个chunk size,也就是说不同slab有不同的chunk size。具体分配多少个slab由参数 -f (增长因子)和 -n ( ...
分类:
系统相关 时间:
2016-10-23 00:13:09
阅读次数:
271
INNODB维护了一个缓存数据和索引信息到内存的存储区叫做buffer pool,他会将最近访问的数据缓存到缓冲区。通过配置各个buffer pool的参数,我们可以显著提高MySQL的性能。 INNODB的buffer pool是基于LRU算法来实现的,我们可以简单了解以下LRU算法: LRU: ...
分类:
数据库 时间:
2016-10-07 20:08:51
阅读次数:
309
特点: 1.分布式缓存,键值对存储,协议简单,建立在TCP协议上的memcache协议, 基于libevnent事件,内置的内存管理方式,memcached间互不通信,分布式靠客户端实现,-f 块大小增长因子 2.高效存储/查找,基于内存 3.分配的内存用完,使用LRU算法 least recent ...
分类:
系统相关 时间:
2016-08-19 00:47:31
阅读次数:
185
1、spring的缓存,mybatis缓存a、基于注解的方式 三种注解b、mybatis分为一级session和二级缓存mapperc、采用LRU算法(近期最少使用) http://www.iteye.com/topic/1112327/ 对缓存并发同步采用jdk的ReadWriteLock 读写锁 ...
分类:
其他好文 时间:
2016-08-17 21:15:43
阅读次数:
277
priority based lru in src/mp/mp_fget.c, __memp_fget(), 初始化 一个page buffer时, 设置其 priority: in src/mp/mp_fget.c, __memp_fput(), 对一个page buffer做put, 使其ref ...
分类:
数据库 时间:
2016-08-17 13:59:21
阅读次数:
161
1. LRU1.1. 原理 LRU(Least recently used,最近最少使用)算法根据数据的历史访问记录来进行淘汰数据,其核心思想是“如果数据最近被访问过,那么将来被访问的几率也更高”。 最常见的实现是使用一个链表保存缓存数据,详细算法实现如下: 1. 新数据插入到链表头部; 2. 每当 ...
分类:
编程语言 时间:
2016-08-04 06:44:01
阅读次数:
288
前言: 在学习LRU算法的时候,看到LruCache源码实现是基于LinkedHashMap,今天学习一下LinkedHashMap的好处以及如何实现lru缓存机制的。 需求背景: LRU这个算法就是把最近一次使用时间离现在时间最远的数据删除掉,而实现LruCache将会频繁的执行插入、删除等操作, ...
分类:
编程语言 时间:
2016-07-31 09:11:53
阅读次数:
255
CacheDispatcher
CacheEntry和DiskBasedCacheCacheHeader
DiskBasedCacheCountingInputStream
缓存的核心DiskBasedCache
初始化逻辑initialize函数
pruneIfNeeded
get和put
else
思考
LRU算法一定合理吗如何增大缓存的命中率
文件名重复问题
首先研究一下Volley的磁盘缓存...
分类:
其他好文 时间:
2016-07-21 16:20:34
阅读次数:
327