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

允许延时一致的业务


概念

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

强一致性业务


概念

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

相关推荐
炸膛坦客31 分钟前
单片机/C/C++八股:(二十)指针常量和常量指针
c语言·开发语言·c++
兑生1 小时前
【灵神题单·贪心】1481. 不同整数的最少数目 | 频率排序贪心 | Java
java·开发语言
daidaidaiyu1 小时前
一文学习 Spring 声明式事务源码全流程总结
java·spring
炸膛坦客2 小时前
单片机/C/C++八股:(十九)栈和堆的区别?
c语言·开发语言·c++
零雲2 小时前
java面试:了解抽象类与接口么?讲一讲它们的区别
java·开发语言·面试
Jay_Franklin2 小时前
Quarto与Python集成使用
开发语言·python·markdown
2401_831824963 小时前
代码性能剖析工具
开发语言·c++·算法
是wzoi的一名用户啊~3 小时前
【C++小游戏】2048
开发语言·c++
未来龙皇小蓝3 小时前
【MySQL-索引调优】11:Group by相关概念
数据库·mysql·性能优化
Sunshine for you4 小时前
C++中的职责链模式实战
开发语言·c++·算法