java cache相关知识

Java Cache

基本原理

核心内容

java cache API的5个核心接口:CachingProvider,CachingManager,Cache,Entry,ExpiryPolicy
CachingProvider:
缓存提供者定义创建,配置,得到,管理,控制一个或者多个CacheManager的机制。一个应用程序能使用一个或者多个CacheProvider在运行时。
CachingManager:
缓存管理者定义创建,配置,得到,管理,控制一个或者多个惟一名称的Caches,在CacheManager的上下文中。一个CacheManager被一个CachingProvider拥有。
Cache:
Cache有点像一个Map的数据结构,准许临时存储基于K-V结构的数据,例如像:java.util.Map的数据结构。一个Cache被一个CacheManger拥有。
Entry:
Entry是有缓存存储的单个键值对元素
ExpiryPolicy:
ExpiryPolicy被用于设置过时策略java

存储方式

值存储:缓存将拷贝应用提供的keys和values,缓存中存储的是一个拷贝副本,存储在缓存中的数据不会由于后续应用中修改keys和values发生改变,数据必须实现序列化。

举例:redisredis

引用存储:缓存中存储的是应用提供的keys和values的引用值,应用的keys和values值发生改变后,引用指向的值也会发生改变

举例:JVM本地缓存guavaspring

Spring Cache

基本原理

核心内容

缓存声明

spring缓存声明的注解:@Cacheable,@CacheEvict,@CachePut,@Caching,@CacheConfig缓存

@Cacheable:数据结构

@Cacheable配置数据对象ide

@CacheEvict:spa

@CacheEvict删除缓存数据对象

@CachePut:接口

@CachePut在不影响方法执行的状况下,更新缓存信息原理

@Caching:

@Caching将应用与方法的多个缓存从新分组

@CacheConfig:

@CacheConfig共享一些常见的缓存配置,提供类级别的配置,能够共享缓存名称  

相关文章
相关标签/搜索