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

数据可以保持延迟,但是数据最终也是一致性的

1.采用了异步处理方法,当有数据更新和插入数据库的时候,放入MQ,顶一个任务监听MQ有数据就进行更新redis缓存

2.阿里提供cannal中间件,他是一个个服务,可以伪装一个mysql节点,当mysql有更新操作的时候,会监听binlog二进制日志数据,更新到redis缓存当中
数据强一致性

1.使用的readsson分布式锁,当读数据的时候添加了一个共享锁,读读不互斥,写互斥,

写的时候添加一个排他锁又称独占锁,可以读读互斥,读写互斥。这样就保证了数据和redis缓存数据一致,共享锁和排他锁 都是一把锁

排他锁底层用的redis sexnx锁,如果有就返回false,如果没有就新建

相关推荐
小张程序人生7 小时前
MySQL一主一从搭建详细讲解
mysql
默恋~微凉7 小时前
Mysql 备份与还原
数据库·mysql
大锦终7 小时前
【MySQL】索引
数据库·mysql
星环处相逢7 小时前
MySQL MHA 全解析与实战部署指南
数据库·mysql
qq_12498707537 小时前
基于springboot+vue+mysql的校园博客系统(源码+论文+部署+安装)
java·vue.js·spring boot·mysql·毕业设计
runfarther8 小时前
mysql_mcp_server部署及应用案例
linux·mysql·centos·mcp
dyxal9 小时前
Windows 内网环境离线安装 MySQL 完整指南
windows·mysql·adb
川石课堂软件测试9 小时前
使用loadrunner调用mysql API进行性能测试
服务器·数据库·python·selenium·mysql·单元测试·自动化
绝顶少年10 小时前
Redis 高可用架构三部曲:主从复制、哨兵模式与集群模式深度解析
数据库·redis·架构
塔能物联运维10 小时前
设备断网时数据丢失,后来启用本地缓存+异步重传队列
java·开发语言·缓存