guava cache源码分析之1个小demo的引入

1:cache的总体框架

如下图,cache 接口是所有guava cache的最顶层接口,这里定义了对缓存操作的最基本方法。

1


2

2:从一个例子开始

     回想下,通常在工程中,我们使用缓存的时候大概要设置哪些参数呢?1:尺寸大小,设置合理的内存空间,防止无限制的增长内存 2:过期时间,对于缓存而言因为我们的内存资源很有限,所以一般要设置过期的时间,定时删除。3:失效策略,当缓存空间已满的时候,我们 是使用什么样的策略来添加后续的key,删除原来缓存中的哪个key。4:如果没从缓存中找到key,如何进行回源。

缓存配置代码如下:

缓存配置
demo
demo结果

注意:guava cache默认是使用lru-1算法,不能配置。

从上面的demo里,我们至少看到了3个在guava cache非常有用的对象,分别是CacheBuilder,CacheLoader以及Cache接口,后面的文章会具体对他们进行源码层面的解读和分析。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,854评论 18 139
  • 一、简介 Ehcache是一个用Java实现的使用简单,高速,实现线程安全的缓存管理类库,ehcache提供了用内...
    小程故事多阅读 44,068评论 9 59
  • 斗罗大陆
    b1e4973395c7阅读 178评论 0 0
  • 秦淮烟雨 红袖添香 醉卧,十丈软红尘 青黛画眉 半点朱唇 不觉,三分媚态娇 灯辉摇曳 满楼燕语 抚琴,一弹半阙曲 ...
    木粥粥阅读 883评论 4 12
  • 今朝马上立斜阳,明日月下还独倾。 深山水碧生迷雾,云中抚琴对月吟。 垂柳依依终无言,烛光凄凄未成眠。 风起箫声逐秋...
    我是蒙牛001阅读 588评论 0 1