Skip to content

Commit c827ae8

Browse files
author
alafighting
committed
Update README.md
1 parent 8bb6853 commit c827ae8

File tree

1 file changed

+66
-2
lines changed

1 file changed

+66
-2
lines changed

README.md

Lines changed: 66 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,66 @@
1-
# KakaCache-RxJava
2-
咔咔一声,缓存搞定。这是一个专用于解决Android中网络请求及图片加载的缓存处理框架
1+
## 咔咔缓存(KakaCache)
2+
> 咔咔一声,缓存搞定。这是一个专用于解决Android中网络请求及图片加载的缓存处理框架
3+
4+
## 支持特性
5+
6+
#### 缓存层级 - 更优良可靠的缓存
7+
- Internet临时缓存
8+
- 磁盘缓存
9+
- 内存缓存
10+
11+
#### 缓存策略 - 尽可能适应多种使用场景
12+
- 仅缓存
13+
- 仅网络
14+
- 优先缓存
15+
- 优先网络
16+
- 先缓存后网络
17+
18+
#### 缓存置换算法 - 多种实现,按需选择
19+
- 先进先出算法(FIFO):最先进入的内容作为替换对象
20+
- 最近最少使用算法(LFU):最近最少使用的内容作为替换对象
21+
- 最久未使用算法(LRU):最久没有访问的内容作为替换对象
22+
- 非最近使用算法(NMRU):在最近没有使用的内容中随机选择一个作为替换对象
23+
- 其他算法,包括变种算法和组合算法
24+
25+
#### 存储策略 - 支持不同数据的缓存需求
26+
- 不存储
27+
- 仅内存
28+
- 仅磁盘
29+
- 内存+磁盘
30+
31+
#### 线程管理 - 异步执行
32+
- 支持多线程操作
33+
- 支持异步执行,UI线程回调
34+
35+
#### 自动清理 - 自动检查
36+
- 缓存过期后,自动清理
37+
- 存储空间不足时,清理超出数据
38+
- 存储个数超量时,清理超出数据
39+
40+
#### 配置项 - 约定大于配置
41+
- 策略
42+
- 存储空间大小
43+
- 存储个数
44+
- 有效期
45+
- 是否启用缓存
46+
- 置换算法
47+
- 线程池大小
48+
- 缓存实现
49+
- 任务优先级
50+
51+
## **项目分层结构**
52+
```
53+
common >> core >> manager >> netcache\imagecache
54+
公用类 >> 存储核心 >> 缓存管理 >> 应用缓存
55+
```
56+
57+
- **common** 通用代码,一般为通用工具类或通用基类,也包含丰富语言特性的基础代码等
58+
- **core** 数据存储,负责数据的读取和写入,不关心线程等
59+
- **manager** 缓存管理,包括但不限于线程等的管理
60+
- **netcache** 网络缓存,针对网络请求的特点,优化缓存功能,重点在于数据同步问题
61+
- **imagecache** 图片缓存,因图片的同步要求不那么苛刻,可以适当的放宽缓存条件
62+
63+
## 关于
64+
65+
- 这是一个正在成长中的开源项目…
66+
- 参与项目开发,欢迎入群:574171290

0 commit comments

Comments
 (0)