首页
https://github.com/ben-manes/caffeine/wiki/Home-zh-CN
最后更新于
这有帮助吗?
https://github.com/ben-manes/caffeine/wiki/Home-zh-CN
最后更新于
这有帮助吗?
Caffeine是一个基于Java8开发的提供了命中率的的缓存库。
缓存和有点相似,但还是有所区别。最根本的区别是将会持有所有加入到缓存当中的元素,直到它们被从缓存当中手动移除。但是,Caffeine的缓存Cache
通常会被配置成自动驱逐缓存中元素,以限制其内存占用。在某些场景下,LoadingCache
和AsyncLoadingCache
因为其自动加载缓存的能力将会变得非常实用。
Caffeine提供了灵活的构造器去创建一个拥有下列特性的缓存:
元素到缓存当中,异步加载的方式也可供选择
当达到最大容量的时候可以使用基于的算法进行
将根据缓存中的元素上一次访问或者被修改的时间进行
当向缓存中一个已经过时的元素进行访问的时候将会进行
key将自动被所封装
value将自动被所封装
驱逐(或移除)缓存中的元素时将会进行
到一个外部数据源当中
持续计算缓存的访问
为了提高集成度,扩展模块提供了和适配器。JSR-107规范了基于Java 6的API,在牺牲了功能和性能的代价下使代码更加规范。Guava的Cache是Caffeine的原型库并且Caffeine提供了适配器以供简单的迁移策略。
我们很欢迎你的贡献。请阅读,[贡献指南][contribute]和。
[contribute]: