Redis作为缓存,如何与MySql的数据进行同步?

允许延时一致的业务


概念

  1. 采用异步通知
  2. 使用MQ作为中间件,更新数据之后通知缓存删除
  3. 利用canal中间件,不需要修改业务代码,伪装成Mysql的一个从节点,canal通过读取binlog数据更新缓存

强一致性业务


概念

  1. 采用Redission提供的读写锁
  2. 共享锁,读锁readLock,加锁以后其他线程可以共享读操作
  3. 排它锁,也叫独占锁writeLock,加锁以后,阻塞其他线程读写操作

相关推荐
@小红花2 小时前
MySQL数据库从0到1
数据库·mysql·oracle
[听得时光枕水眠]2 小时前
MySQL基础(三)DQL(Data Query Language,数据查询语言)
数据库·mysql·oracle
朝新_2 小时前
【多线程初阶】阻塞队列 & 生产者消费者模型
java·开发语言·javaee
立莹Sir2 小时前
Calendar类日期设置进位问题
java·开发语言
风逸hhh3 小时前
python打卡day46@浙大疏锦行
开发语言·python
火兮明兮3 小时前
Python训练第四十三天
开发语言·python
季鸢4 小时前
Java设计模式之状态模式详解
java·设计模式·状态模式
@yanyu6664 小时前
springboot实现查询学生
java·spring boot·后端
ascarl20104 小时前
准确--k8s cgroup问题排查
java·开发语言
magic 2454 小时前
Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误
java