浅析本地缓存技术-Guava Cache | 京东物流技术团队
💡
原文中文,约2300字,阅读约需6分钟。
📝
内容提要
Guava Cache适用于对访问速度有较大要求、存储的数据不经常变化、数据量不大且占用内存较小、需要访问整个集合、能够容忍数据不是实时的场景。使用Guava Cache需要引入Maven依赖,并通过CacheBuilder构建缓存。缓存的参数包括初始容量、最大缓存数、并发等级和缓存写入后刷新时间。从缓存中获取数据使用get方法,从缓存中删除数据有被动删除和主动删除两种方式。Guava Cache的存储原理类似于ConcurrentHashMap,但为了限制内存占用,通常会自动回收元素。通过阅读本文,可以对Guava Cache有一个大致的认知。
🎯
关键要点
- Guava Cache适用于对访问速度有较大要求、存储的数据不经常变化、数据量不大且占用内存较小、需要访问整个集合、能够容忍数据不是实时的场景。
- Guava Cache的主要应用场景包括:访问速度要求高、数据不经常变化、数据量小、需要访问整个集合、能够容忍非实时数据。
- 使用Guava Cache需要引入Maven依赖,并通过CacheBuilder构建缓存,主要类包括CacheBuilder和Cache。
- Guava Cache的初始化参数包括初始容量、最大缓存数、并发等级和缓存写入后刷新时间。
- 从缓存中获取数据使用get方法,删除数据有被动删除和主动删除两种方式。
- 被动删除包括基于数据大小、过期时间和引用的删除,主动删除可以通过invalidate方法。
- Guava Cache的存储原理类似于ConcurrentHashMap,但会自动回收元素以限制内存占用。
- Guava Cache的核心类为LocalCache,使用Segment数组和锁机制来管理并发写操作。
- 本文介绍了Guava Cache的应用场景、使用方式、存储原理及读写方法,帮助读者对Guava Cache有基本认知。
🏷️
标签
➡️