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

允许延时一致的业务


概念

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

强一致性业务


概念

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

相关推荐
p***q784 分钟前
【保姆级教程】apache-tomcat的安装配置教程
java·tomcat·apache
愤怒的山羊9 分钟前
jetcache List 缓存, json 序列化 泛型解析成了 JsonObject 处理
缓存·json·list
周杰伦fans14 分钟前
C# 中的**享元工厂**模式
开发语言·数据库·c#
2501_9411486119 分钟前
C++实时数据处理实战:多线程与异步IO结合高性能代码解析
java·后端·struts
u***u68520 分钟前
C++在系统中的异常处理
java·开发语言·c++
树在风中摇曳21 分钟前
带哨兵位的双向循环链表详解(含 C 代码)+ LeetCode138 深度解析 + 顺序表 vs 链表缓存机制对比(图解 CPU 层级)
c语言·链表·缓存
空空kkk27 分钟前
SpringMVC——拦截器
java·数据库·spring·拦截器
爱学测试的雨果28 分钟前
收藏!软件测试面试题
开发语言·面试·职场和发展
文涛是个小白呀31 分钟前
Java集合大调研
java·学习·链表·面试
我也爱吃馄饨38 分钟前
写的webpack插件如何适配CommonJs项目和EsModule项目
java·前端·webpack