当前位置: 首页 > article >正文

redis双写一致

redis双写一致,指的是redis缓存与mysql数据同步

双写一致常见方案有很多:

同步双写:更新完mysql后立即同时更新redis

mq同步:程序在更新完mysql后,投递消息到中间键mq,一个程序监听mq,获得消息后更新redis中的数据

阿里cannal组件实现异步监听:优点是不需要更改业务代码,部署cannal服务。cannal服务会把自己伪装成mysql的从节点,数据库更新后,canal会读取binlog数据,canal客户端获取到数据,会更新缓存

保证双写强一致性可以考虑上共享锁和排他锁,即读写锁

可用redisson实现读写锁,读的时候添加读锁,读共享,不能写。更新数据的时候,添加写锁,读写都互斥。这样就能保证写数据的同时不会让其他线程读取数据,避免脏数据。

排它锁底层可以使用setnx,也可以使用redisson框架(分布式环境中如何实现排他锁)

读锁的实现


http://www.kler.cn/news/233818.html

相关文章:

  • Deepin基本环境查看(八)【系统安全:房、车、查房、查车】
  • 2.9日学习打卡----初学RabbitMQ(四)
  • Unity报错Currently selected scripting backend (IL2CPP) is not installed
  • 【数据存储+多任务爬虫】
  • Jupyter的全面探索:从入门到高级应用
  • 数据结构——5.4 树、森林
  • 模运算的变换公式
  • QListWidget组件功能
  • 被设计的面试题与设计性的回答
  • 配置VMware实现从服务器到虚拟机的一键启动脚本
  • 数据结构——5.3 二叉树的遍历和线索二叉树
  • 游戏竞赛中的时间压力与情绪管理:一场关于挑战、紧迫感与心态的深度探讨
  • 255.【华为OD机试真题】最小矩阵宽度(滑动窗口算法-JavaPythonC++JS实现)
  • 【微机原理与单片机接口技术】MCS-51单片机的引脚功能介绍
  • LabVIEW工业监控系统
  • 【Linux】构建模块
  • 2、ChatGPT 在数据科学中的应用
  • Istio1.6官方文档中文版
  • C++2024寒假J312实战班2.5
  • 正点原子--STM32通用定时器学习笔记(2)
  • 速盾:海外服务器用了cdn还是卡怎么办
  • 【CSS】什么是BFC?BFC有什么作用?
  • Android 11 webview webrtc无法使用问题
  • cool 框架 node 后端封装三方Api post请求函数
  • NLP_Bag-Of-Words(词袋模型)
  • 如何进行游戏服务器的负载均衡和扩展性设计?
  • VUE学习——事件参数
  • 每天一个数据分析题(一百五十六)
  • moduleID的使用
  • 【学习笔记】【内核】offsetof 的用法