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

允许延时一致的业务


概念

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

强一致性业务


概念

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

相关推荐
秋93 分钟前
Java项目运行5天左右自动宕机:系统性定位与解决方案
java·开发语言·python
小江的记录本9 分钟前
【JVM虚拟机】垃圾回收GC:垃圾收集器:CMS:核心原理、回收流程、优缺点、废弃原因(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·spring·面试·maven
cfm_291421 分钟前
Redis数据安全性解析
数据库·redis·缓存
xiaoshuaishuai823 分钟前
C# 内存管理与资源泄漏
开发语言·c#
DIY源码阁27 分钟前
JavaSwing学生成绩管理系统 - MySQL版
java·数据库·mysql·eclipse
lsx2024061 小时前
SVN 检出操作
开发语言
basketball6161 小时前
C++ NULL 和 nullptr 区别 以及 nullptr 的核心实现
java·开发语言·c++
无小道2 小时前
Redis——集合类型相关命令
redis·set
辞忧九千七2 小时前
Redis 单机一主二从主从复制完整搭建指南
数据库·redis·缓存
旺仔来了2 小时前
不联网的Linux下部署python环境
linux·开发语言·python