Skip to content

Home zh CN

汤煜冬 edited this page Sep 6, 2020 · 6 revisions

Caffeine是一个基于Java8开发的提供了近乎最佳命中率的高性能的缓存库。

缓存和ConcurrentMap有点相似,但还是有所区别。最根本的区别是ConcurrentMap将会持有所有加入到缓存当中的元素,直到它们被从缓存当中移除。另一方面Cache 通常会被配置成自动驱逐缓存元素,以限制其内存占用。在某些场景下,LoadingCacheAsyncLoadingCache 因为其自动加载缓存的能力将会变得非常实用。

Caffeine提供了灵活的构造器去创建一个拥有下列特性的缓存:

为了提高集成度,扩展模块提供了JSR-107 JCacheGuava适配器。JSR-107规范了基于Java 6的API,在牺牲了功能和性能的代价下减少特定于厂商的代码。Guava的Cache是Caffeine的原型库并且适配器提供了简单的迁移策略。

我们很欢迎你的贡献。请阅读设计部分,开发者指引文档开发路线图

Clone this wiki locally