应用级缓存

缓存命中率

缓存的命中率=从缓存读取的次数/读取的总数。
缓存命中率越高越好,这个需要监控。监控如何设计?

java缓存类型

1、堆缓存,一般是用软引用来实现,存在于堆内,需要不需要序列化和反序列化,速度比较快,但是受限于堆内存空间大小。GC回收的时候可能需要等待比较大的时间。
2、堆外缓存,只收内存空间限制,不受堆内存大小的限制。需要序列化和反序列化,速度比堆慢。
3、磁盘缓存
4、分布式缓存

应用级缓存策略

1、本地缓存初始化
本地缓存时间 使用 分布式缓存时间的一半,防止缓存过长造成多实例不一致。

2、写缓存API
先写本地缓存,异步更新分布式缓存。

3、读缓存
先读本地缓存,再读分布式缓存

4、小技巧--NULL Cache
当查DB没有数据,将其封装为NULL_STRING并存入缓存

5、强制刷新
怎么强制刷新?应该找缓存提供的refresh方法

posted @ 2017-08-29 22:24  小霖2012  阅读(335)  评论(0)    收藏  举报