Redis双写一致性?

双写一致性:当修改了数据库的数据也要同时更新缓存的数据,缓存和数据库的数据要保持一致。

Redis作为缓存,mysql的数据如何与redis进行同步呢?(双写一致性)

1.我们当时做排行榜业务时,把历史榜单数据存储到了缓存中。这个虽然也是热点数据,但是实时要求性不高。所以,我们采用了异步的方案定时同步数据到DB。

2.我们做优惠券模块时,把抢券的库存存入到了缓存中,这个需要实时的数据同步,不然会发生超发现象。为了保证数据强一致性,我们当时采用了Redisson提供的读写锁来同步数据的。

那你介绍下异步的方案?/ Redisson读写锁的方案?

异步方案:允许延时一致的业务,采用异步通知

①使用MQ中间件,更新数据之后,通知缓存删除。

②利用canal中间件,canal可以伪装成mysql的一个从节点,通过读取binlog数据,更新缓存。

Redisson读写锁:强一致性的

①共享锁:读锁readLock,加锁之后,其他线程可以共享读操作。

②排他锁:独占锁writeLock,加锁后,阻塞其他线程读写操作。

相关推荐
MongoDB 数据平台5 分钟前
破解车联网数据管理困局,MongoDB助力长城汽车构建车联数智化核心引擎
数据库·mongodb
2301_779622416 分钟前
如何自动计算SQL税费信息_利用触发器实时扣算税额
jvm·数据库·python
weixin_444012936 分钟前
mysql在高并发环境下的读写分离与负载均衡
jvm·数据库·python
2401_824697666 分钟前
如何通过phpMyAdmin给WordPress所有用户发送全站通知_系统表插入
jvm·数据库·python
CLX05058 分钟前
如何管理Oracle服务器的内核共享内存_shmmax与shmall计算
jvm·数据库·python
云边有个稻草人9 分钟前
端边云一体化时序数据管理:数据库选型与技术实现
数据库·端边云时序数据方案·工业物联网时序数据库·开源时序数据库选型·高压缩时序存储技术·时序数据库选型指南·tsfile 存储引擎技术
2301_8125396710 分钟前
golang如何实现备忘录模式_golang备忘录模式实现方案
jvm·数据库·python
weipt10 分钟前
国产数据库私有化部署实战:PolarDB for PostgreSQL 免费容器版踩坑记
数据库·postgresql
woxihuan12345613 分钟前
HTML怎么构建课程学习仪表盘_HTML进度环+任务列表【教程】
jvm·数据库·python
三产14 分钟前
Hermes 教程 03:Skills 系统
android·java·数据库