您现在的位置是:亿华云 > 知识
Java本地缓存,完胜 Guava !
亿华云2025-10-04 13:41:24【知识】7人已围观
简介来源:开源小分队大家好,我是爱学习的了不起!在项目中用到的除了分布式缓存,还有本地缓存,例如:Guava、Encache,使用本地缓存能够很大程度上提升程序性能,本地缓存是直接从本地内存中读取,没有网
大家好,本地我是缓存爱学习的了不起!
在项目中用到的完胜除了分布式缓存,还有本地缓存,本地例如:Guava、缓存Encache,完胜使用本地缓存能够很大程度上提升程序性能,本地本地缓存是缓存直接从本地内存中读取,没有网络开销。完胜
今天给大家介绍一个高性能的本地 Java 缓存库 -- Caffeine 。
简介
Caffeine是缓存基于Java8 的高性能缓存库,借鉴了 Guava 和 ConcurrentLinkedHashMap 的云南idc服务商完胜设计经验,拥有更高的本地缓存命中率和更快的读写速度。
性能比Guava更强

功能特性
基于时间的回收策略:包括写入时间和访问时间基于容量的回收策略:一种是基于容量大小,一种是完胜基于权重大小,两者只能取其一。基于数量回收策略基于引用的回收策略:GC并且内存不足时,会触发软引用回收策略;GC并且内存不足时,会触发软引用回收策略。value自动封装弱引用或软引用缓存访问统计使用方式
引入依赖
caffeine
配置缓存类
@Configurationpublic class CacheConfig{
@Bean public Cache<String, Object> caffeineCache(){
returnCaffeine.newBuilder()
// 设置了1分钟的写过期 .expireAfterWrite(60, TimeUnit.SECONDS)
// 初始的缓存空间大小 .initialCapacity(100)
// 缓存的网站模板最大条数 .maximumSize(1000)
.build();
}
}
这种方式的弊端是所有的缓存都放在一起,最好的使用方式是每一个缓存单独创建缓存对象。
使用缓存
public User getOne(Wrapper<User> queryWrapper, boolean throwEx){
//查询缓存 Object obj = caffeineCache.getIfPresent("1");
User user = null;
if(Objects.isNull(obj)){
System.out.println("查询db");
user = getById(1);
//加载到缓存中 caffeineCache.put("1",user);
}else{
user = (User) obj;
}
returnuser;
}
总结
Caffeine 是当前优秀的内存缓存框架,无论读还是写的效率都远高于其他缓存,从 Spring5 开始的默认缓存实现就将 Caffeine 代替原来的Google Guava,支持多种回收策略,感兴趣的香港云服务器小伙伴赶快去试试吧
很赞哦!(788)
上一篇: 旧域名的外链是否会对新建站点产生影响?
下一篇: 换新域名(重新来过)
相关文章
- 以上的就是为大家介绍的关于域名的详解
- 迷惑了,Go len() 是怎么计算出来的?
- 用Selnium和Python构建自动化Web测试框架
- 盘点服装设计所经常性使用的软件---ET(中篇)
- 其次,一般域名注册有一个获取密码的按钮,域名注册商点击后会向您发送密码。在得到域名注册商发送的密码后,将其传输到域名服务提供商网站,然后输入密码,此时域名呈现申请状态。提交申请后,原注册人通常会向您发送一封电子邮件,询问您是否同意转让。此时,您只需点击同意转移按钮,域名注册商就可以成功转移。
- 双重检查锁,原来是这样演变来的,你了解吗
- Java多线程八股文背诵版V0.2
- 为什么我们反对中文编程,英文可能才是现阶段最好的编程语言选择
- 4、club娱乐
- 11款超5000星 后台管理模板,总有一款适合你!
热门文章
站长推荐
解析之后一般在十分钟内生效,如果没有生效可以联系域名服务商进行沟通。
一文教你如何用C代码解析一段网络数据包?
聊聊 Python 数据处理全家桶(PgSQL篇)
HarmonyOS应用框架如何解决多设备交互问题?
用户邮箱的静态密码可能已被钓鱼和同一密码泄露。在没有收到安全警报的情况下,用户在适当的时间内不能更改密码。在此期间,攻击者可以随意输入帐户。启用辅助身份验证后,如果攻击者无法获取移动电话动态密码,他将无法进行身份验证。这样,除非用户的电子邮件密码和手机同时被盗,否则攻击者很难破解用户的邮箱。
面试官:说说你在使用React 过程中遇到的常见问题?解决方案?
基于跨设备迁移和分布式文件能力的DistributedMail解析
Unity宣布将以3.2亿美元收购Parsec远程桌面工具