当前位置:网站首页>数据一致性:双删为什么要延时?
数据一致性:双删为什么要延时?
2022-08-03 21:36:00 【薪升贷农名工】
为了保证redis和MySQL数据的一致性,我们知道要进行延时双删,具体原因分析参考Redis和MySQL保持数据一致性
简单说一下延时双删的原理:
先进行redis删除,然后写入数据库,等待一段时间后再进行redis删除
原理自不必说,问题在于在写入数据库后为什么要延迟一段时间再删除redis而不能直接删除?
事务1进行数据库写入,当有其他事务2在A时间段内进行查询操作时,因为这时候数据库还没写入,这时候事务2读到的是旧数据。如果事务1在写入数据库后直接进行redis的删除,这时候事务2在事务1最后删除redis后更新了redis,那么这样就导致了数据不一致。以后每次读取时读到的都是脏数据直到redis过期。
出问题的原因是什么,就是因为有事务2在A时间段内读取数据库时,在其他时间段内都不会发生不一致的问题。
- 在事务1第一次删除redis前:这时候读取到的本身就是旧数据
- 在事务1写入数据库后即B时间段,这时候读到的是新数据
因此我们要保证所有在A时间段内读取数据库的事务在更新redis后,事务1能够将redis删除。
只要设置延时时间为事务2的请求时间,这时候保证事务1在最后删除redis前,事务2已经更新了redis,保证了事务2的更新redis操作发生在事务1最后删除redis操作前。
事务3即增加了延迟操作,保证最后redis删除时可以将所有的事务2的redis删除,这样就保证了最终的redis和MySQL数据的一致性
边栏推荐
- 距LiveVideoStackCon 2022 上海站开幕还有3天!
- 肝完 Alibaba 这份面试通关宝典,我成功拿下今年第 15 个 Offer
- 七夕快乐!
- [kali-vulnerability exploitation] (3.2) Metasploit basics (on): basic knowledge
- CAS:908007-17-0_Biotin-azide _生物素叠氮化物
- [kali-vulnerability scanning] (2.1) Nessus download and installation (on)
- E - Swap
- 从开发到软件测试:除了扎实的测试基础,还有哪些必须掌握 ?
- 距LiveVideoStackCon 2022 上海站开幕还有2天!
- IDaaS 是什么?一文说清它的价值
猜你喜欢
From September 1st, my country has granted zero-tariff treatment to 98% of tax items from 16 countries including Togo
CAS:1797415-74-7_TAMRA-Azide-PEG-Biotin
XSS online shooting range---haozi
6. XML
CC2530_ZigBee+华为云IOT:设计一套属于自己的冷链采集系统
LitJson报错记录
七夕快乐!
解决npm -v查看npm版本出现npm WARN config global `--global`, `--local` are deprecated. Use `--location报错
PyCharm function automatically add comments without parameters
编译器工程师眼中的好代码(1):Loop Interchange
随机推荐
LeetCode_Digit Statistics_Medium_400. Nth Digit
一体化HTAP数据库如此难,为什么他们还要做?
1 秒完成授权,Authing 全新上线一键登录功能
CAS:1192802-98-4_UV 裂解的生物素-PEG2-叠氮
LitJson报错记录
ES、Kibana 8.0安装
MMA安装及使用优化
函数,递归以及dom简单操作
CAS:908007-17-0_Biotin-azide _生物素叠氮化物
Interesting opencv - record image binarization and similarity
距LiveVideoStackCon 2022 上海站开幕还有3天!
[3D检测系列-PV-RCNN] PV-RCNN论文详解、PV-RCNN代码复现、包含官网PV-RCNN预训练权重及报错问题
From September 1st, my country has granted zero-tariff treatment to 98% of tax items from 16 countries including Togo
XSS练习---一次循环和两次循环问题
384. Shuffle an Array
史兴国对谈于佳宁:从经济模式到落地应用,Web3的中国之路怎么走?
IO thread process -> thread synchronization mutual exclusion mechanism -> day6
XSS online shooting range---Warmups
电商数仓ODS层-----日志数据装载
不专业面试官的经验总结