Guava缓存实战及使用场景
摘要:本文是Google guava 第一件,本文先介绍了为什么使用Guava Cache缓存,然后讲解了使用方法及底层数据结构,结合实际业务,讲解使用guava过程中踩过的坑,最后讲解了guava可以优化的方向
文章目录
1 为什么使用本地缓存
在多线程高并发场景中往往是离不开cache的,需要根据不同的应用场景来需要选择不同的cache,比如分布式缓存如Redis、memcached,还有本地(进程内)缓存如ehcache、GuavaCache。
相比IO操作,速度快,效率高;
相比Redis,Redis是一种优秀的分布式缓存实现,受限于网卡等原因,远水救不了近火。
1.1 适用场景
- 愿意消耗一些内存空间来提升速度
- 预料到某些键会被多次查询
- 缓存中存放的数据总量不会超出内存容量
- 如果你的场景符合上述的每一条,Guava Cache就适合