redis的一些疑问

spring集成redis

复制代码
@CacheEvict(value = "commonCache", key = "#uniqueid+'_userInfo'")

什么时候会执行缓存移除呢?如果方法执行异常是否移除?如果缓存不存在还会移除么?

这个移除会在redis的执行历史命令中监控到么?

./redis-cli -a密码 MINITOR 监控redis的实时执行命令,大部分PING是类似心跳?

使用这个实时监控命令,可以 使用grep管道过滤出指定的key来监控redis命令的执行

第一次缓存存在的情况下,执行方法,会有一条del命令;

第二次缓存不存在的情况下,执行方法,也会执行del命令;

所以不管有没有缓存 @CacheEvict 都会执行 redis的 DEL命令

redis 集群同步

由于业务需要2个平台redis做了单向同步 A-->B ,其实具体原理不甚了解,用的阿里云的redis产品,同步也是由运维同学做的,运维的意思是抓取A的redis-server的日志在B集群上执行相同的命令;

但测试发现有些场景并不能同步

但发现A测执行del的命令,B测的key并没有删除为什么? 如果是A生成的key,A删除可以同步删除B,如果B自己生成的key,A测没有这个key,在A测执行 del 是没法同步到B的 (是因为根据del的结果决定是否同步么还是什么原理?)

相关推荐
寻星探路16 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
陌上丨18 小时前
Redis的Key和Value的设计原则有哪些?
数据库·redis·缓存
曹牧18 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
爬山算法19 小时前
Hibernate(90)如何在故障注入测试中使用Hibernate?
java·后端·hibernate
kfyty72519 小时前
集成 spring-ai 2.x 实践中遇到的一些问题及解决方案
java·人工智能·spring-ai
猫头虎19 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
李少兄19 小时前
在 IntelliJ IDEA 中修改 Git 远程仓库地址
java·git·intellij-idea
忆~遂愿19 小时前
ops-cv 算子库深度解析:面向视觉任务的硬件优化与数据布局(NCHW/NHWC)策略
java·大数据·linux·人工智能
小韩学长yyds20 小时前
Java序列化避坑指南:明确这4种场景,再也不盲目实现Serializable
java·序列化