news 2026/2/9 12:11:42

mysql与redis缓存一致性问题

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
mysql与redis缓存一致性问题

先更新数据库,再删除redis

  1. 没有试探机制,如果redis删除失败,永久不一致
  2. 并发问题:删除redis之前,其他线程读取到旧数据

先删除缓存,再更新数据库

  1. 没有试探机制,如果数据库更新失败,永久不一致
  2. 并发问题:更新数据库之前,其他线程读到db旧数据又写回redis旧数据

延时双删(先更新数据库,再删除redis的优化版本)

  1. 引入试探机制,先删除redis,删除成功表示redis链接可用有效
  2. 更新数据库成功说明数据库连接有效
  3. 延迟删除redis
  4. 能保证最终一致性

先更新数据,再更新redis(不推荐)

  1. 并发情况下会错乱顺序
  2. A先更新db,b后更新db。但是b先更新redis,a后更新redis。最后db是b的,redis却是a的数据

使用分布式锁

  1. 加分布式锁不需要考虑并发问题了,只考虑事务问题
  2. 先更新db,再删除redis
  3. redis失败,则db回滚
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/5 6:33:56

Docker部署边缘Agent常见问题解析(避坑指南+性能调优)

第一章:边缘 Agent 的 Docker 轻量级部署概述在物联网与边缘计算快速发展的背景下,边缘 Agent 作为连接终端设备与云端服务的核心组件,其部署效率与资源占用成为关键考量因素。Docker 容器化技术凭借轻量、可移植和隔离性强的优势&#xff0c…

作者头像 李华
网站建设 2026/2/7 16:48:19

轻量文件加密软件推荐:2025 年 5 款不占内存软件实测

在数据安全愈发重要的当下,轻量不占内存的文件加密工具成为刚需。2025 年实测 5 款优质软件,它们兼顾加密强度与运行效率,无需复杂配置即可快速上手,适配个人办公与小型团队协作场景,帮你轻松守护文件隐私,…

作者头像 李华
网站建设 2026/2/5 11:30:05

VSCode中实现量子电路仿真的完整路径(量子开发者的隐藏武器)

第一章:VSCode中实现量子电路仿真的完整路径(量子开发者的隐藏武器)在现代量子计算开发中,VSCode 已成为开发者不可或缺的集成环境。结合强大的扩展生态与开源量子框架,它为构建、仿真和调试量子电路提供了前所未有的便…

作者头像 李华
网站建设 2026/1/30 23:02:13

阿里一面灵魂一问:RPC或者HTTP什么时候需要序列化和反序列化?

有位读者问了,我这么一个问题: 不管是 RPC 或者 HTTP,只要传输的内容是「对象」,要想在接收方还原出一摸一样的「对象」,那就需要序列化和反序列化。 那什么是序列化和反序列化呢? RPC 能帮助我们的应用透明…

作者头像 李华
网站建设 2026/2/8 7:06:18

【Mac使用Z-Image生图教程】Draw Things配置方法与真实测试效果 Mac 下如何使用 Z-Image-Turbo?从安装到生图的完整教程

【Mac使用Z-Image生图教程】Draw Things配置方法与真实测试效果 关键词:Z-Image Turbo、Mac生图教程、Draw Things配置、阿里通义、AI绘图模型、Mac本地AI画图、AI生成图片、模型安装、Z Image Turbo使用方法 作为一名程序员,我天生对「大模型本地能不能…

作者头像 李华
网站建设 2026/2/7 6:02:34

(15)抽象工厂模式(了解)

抽象工厂模式相对于工厂方法模式来说,就是工厂方法模式是针对一个产品系列的,而抽象工厂模式是针对多个产品系列的,即工厂方法模式是一个产品系列一个工厂类,而抽象工厂模式是多个产品系列一个工厂类。 抽象工厂模式特点&#xff…

作者头像 李华