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

允许延时一致的业务


概念

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

强一致性业务


概念

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

相关推荐
没钥匙的锁118 分钟前
05-Java面向对象构造器与封装
java·开发语言
仙人球部落21 分钟前
-python-LangGraph框架(3-31-LangGraph 「合并式状态管理」的原理与实践)
开发语言·javascript·python
2401_8949155325 分钟前
Geo搜索优化排名源码部署搭建全流程详解
android·开发语言·flask·php·精选
aaPIXa62244 分钟前
C++采样引导优化SPGO——比PGO更智能的编译器决策新方案
java·c++·人工智能
蓝银草同学1 小时前
Stream 实战:博客列表排序、过滤与分页(AI 辅助学习 Java 8)
java·前端·后端
chouchuang1 小时前
day-025-面向对象-上
开发语言·python
某不知名網友1 小时前
C/C++动态内存管理,智能指针及RAlI思想。
java·c语言·c++
sunfdf1 小时前
Next.js 新手从零部署到首跑实战指南
开发语言·javascript·ecmascript
hold?fish:palm2 小时前
从源码到可执行文件:C++程序的编译过程
开发语言·c++
随性而行3602 小时前
微信API接口与AI自动化:开发者的实现思路
运维·服务器·开发语言·人工智能·微信·自动化