新闻详情

新闻详情

首页 / 资讯中心 / 详情

【避坑】使用CacheEvict需要注意的坑

发布时间:2026/10/1 19:29:03来源:尧图网络
【避坑】使用CacheEvict需要注意的坑
背景在使用spring cache的时候如果对注解类型使用不当、并发情况没有很好的了解的情况下可能会造成生产的故障如下注解CacheEvict(allEntriestrue)在高并发的场景下可能会导致redis压力飙升。逻辑分析这个注解了allEntries 为true表示非确定的key那么框架在删除key的时候需要获得全部的key使用的命令是 keys传入的参数如下xxx:: *xxx是你的缓存key我们知道使用keys是比较消耗redis性能的再加上高并发场景则是灾难后果代码分析执行的方法是org.springframework.data.redis.cache.DefaultRedisCacheWriter#cleanpublic void clean(String name, byte[]pattern){Assert.notNull(name,Name must not be null!);Assert.notNull(pattern,Pattern must not be null!);execute(name, connection -{boolean wasLockedfalse;try{if(isLockingCacheWriter()){doLock(name, connection);wasLockedtrue;}// A byte[][]keysOptional.ofNullable(connection.keys(pattern)).orElse(Collections.emptySet()).toArray(new byte[0][]);if(keys.length0){// B connection.del(keys);}}finally{if(wasLockedisLockingCacheWriter()){doUnlock(name, connection);}}returnOK;});}A通过keys 命令模糊获得所有的keyB删掉所有的key调用栈如下有兴趣的同学可以看看over~~
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

C++算法精讲之贪心算法 2026/10/2 7:08:56

C++算法精讲之贪心算法

前言贪心算法(greedy algorithm)是"每一步都选当前看起来最好的那个"的算法范式。它的代码往往只有十几行,比动态规划(dynamic programming,DP)短得多,但正确性门槛比 DP 高得多&…

阅读更多 →
dsh-purge演练台资产库深度解析:SQLite如何存储靶标资产、POC与攻击链 2026/10/2 7:08:50

dsh-purge演练台资产库深度解析:SQLite如何存储靶标资产、POC与攻击链

dsh-purge演练台资产库深度解析:SQLite如何存储靶标资产、POC与攻击链 【免费下载链接】dsh-purge DeepSeek Harness 破甲:让所有模型都能破甲,不同模型可换不同提示词;默认提示词面向国模「小码酱」。Jailbreak for every model …

阅读更多 →
Desthiobiotin NHS Ester,cas:80750-24-9,脱硫生物素-琥珀酰亚胺酯,脱硫生物素-NHS酯 2026/10/2 7:08:50

Desthiobiotin NHS Ester,cas:80750-24-9,脱硫生物素-琥珀酰亚胺酯,脱硫生物素-NHS酯

基础信息中文名称:脱硫生物素-NHS酯,简称脱硫生物素-活性酯英文名称:Desthiobiotin NHS Ester,全称N-Hydroxysuccinimido dethiobiotinateCAS编号:80750-24-9分子式:C₁₄H₂₁N₃O₅分子量:约3…

阅读更多 →
GitHub热榜项目怎么刷才有价值:看懂、跑通、评估三步法 2026/10/2 7:08:44

GitHub热榜项目怎么刷才有价值:看懂、跑通、评估三步法

GitHub热榜这地方,要么不刷,一刷就是一个小时。每天早上的日榜就像一份技术圈的早餐菜单,热门项目换得飞快,昨天还挂在那里的仓库,今天可能已经跌出前二十五。2026年9月25日这期日榜我完整刷了几遍,印象最深…

阅读更多 →
hindsight:从浏览器历史到数字取证时间线的开源解析工具 2026/10/2 7:08:44

hindsight:从浏览器历史到数字取证时间线的开源解析工具

你有没有想过,真正能还原一个人数字生活轨迹的,往往不是聊天记录,而是浏览器历史?很多年前做安全分析时,我最怕遇到的情况就是:聊天记录缺失、文件被清理、日志被清空。但只要浏览器还在,Histor…

阅读更多 →
文档排版与数据处理:阿拉伯数字与罗马数字的转换 2026/10/2 7:08:37

文档排版与数据处理:阿拉伯数字与罗马数字的转换

前言 在学术论文、法律文书、出版物排版以及复杂的数据处理中,罗马数字依然扮演着不可替代的角色。无论是用于区分论文前置部分的页码、构建多级大纲编号,还是在表格中进行特定格式的数据转换,掌握罗马数字的底层逻辑与软件操作规范&#xff…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉