谷粒商城实战(010 缓存-解决数据一致性问题以及SpringCache的使用)

Java项目《谷粒商城》架构师级Java项目实战,对标阿里P6-P7,全网最强

总时长 104:45:00 共408P

此文章包含第166p-第p172的内容


缓存一致性问题解决

redisson使用lua脚本,所以的锁都保证了原子性

改之前的代码

锁的粒度越小越好

如11号商品和12号商品 用同一把锁,12的并发也会影响11

数据一致性

目前主要是两种模式: 双写和失效模式



使用Canal

使用Canal可以实现数据异构

如:它会分析每天用户的访问记录 和每天的商品信息的更新,然后通过某些算法进行分析计算,生成用户异构系统用户商品推荐表

SpringCache


两个方法(两个功能)

第一个方法 根据名称得到缓存

第二个方法 得到所有的缓存的名字

缓存如果是北京市,那缓存的名字就相当于北京市的各个区的名字



整合springCache

使用步骤

*

可以给多个缓存区放置

这里是jdk序列化后的结果 可以转成纯文本

自定义缓存

key记得加单引号否则spring会以为是表达式

这里的过期时间在配置文件里设置,是毫秒为单位的,切记 同一个过期时间,可能会导致redis雪崩


自己写一个组件配置类

@EnableConfigurationProperties(CacheProperties.class) 的这个注解就把这个CacheProperties组件放到容器中了啊

直接放到参数里


清除缓存

处理两个缓存

也可以直接删除这个分区的所有数据

最好去掉前缀 使用默认的前缀

原理和不足




相关推荐
he25819几秒前
centOS 7.9 安装JDK MYSQL
java·mysql·centos
找了一圈尾巴13 分钟前
Spring Boot 日志管理(官网文档解读)
java·spring boot
升讯威在线客服系统13 分钟前
如何通过 Docker 在没有域名的情况下快速上线客服系统
java·运维·前端·python·docker·容器·.net
iVictor20 分钟前
Redis 大 Key 分析利器:支持 TOP N、批量分析与从节点优先
redis
s:1031 小时前
【框架】参考 Spring Security 安全框架设计出,轻量化高可扩展的身份认证与授权架构
java·开发语言
qq_529835353 小时前
对计算机中缓存的理解和使用Redis作为缓存
数据库·redis·缓存
南山十一少4 小时前
Spring Security+JWT+Redis实现项目级前后端分离认证授权
java·spring·bootstrap
427724006 小时前
IDEA使用git不提示账号密码登录,而是输入token问题解决
java·git·intellij-idea
chengooooooo6 小时前
苍穹外卖day8 地址上传 用户下单 订单支付
java·服务器·数据库
李长渊哦6 小时前
常用的 JVM 参数:配置与优化指南
java·jvm