Redis和Mysql数据同步的两种方案
**
利用数据库本身进行手动同步
**
具体操作
- 在MySQL中对要操作的数据设置触发器Trigger,监听操作
- 客户端(NodeServer)向MySQL中写入数据时,触发器会被触发,触发之后调用MySQL的UDF函数
- UDF函数可以把数据写入到Redis中,从而达到同步的效果
好处
同步效率比较高,一般结合延迟双删和缓存超时策略进行手动同步
延迟双删和缓存超时简介
首先删除redis中的数据,然后更新数据库中的数据,最后过一段时间(大概一分钟)再对redis中数据做一次删除.这样就可能尽量保证我们的redis数据被删掉,但极端情况下,旧数据还是没有删掉,所以我们设计让它的过期时间短一点,这样就算没删掉也可以很快过期.
利用Canal进行数据同步
Canal简介
阿里旗下,用来监控数据库内部数据变化的软件.
Canal会伪装成mysql的备份机.当mysql进行数据操作以后,会将记录记载到日志中,同时发送给备份机,当canal接收到日志数据后,就会进行后续数据同步工作.
数据更新(以首页广告更新为例)
当mysql内部的数据发生改变之后.我们的数据监控微服务,就可以根据canal获取到最新更新的数据.,将我们的position字段的值提取出来(代表当前广告的位置),之后数据监控的微服务就会把这个值发送到rabbitmq上,rabbitmq收到这个消息后,就会把这个消息保存到自己的内存中.这时运营的微服务就会从rabbitmq中把值拿出来,调用nginx中的更新数据的lua脚本进行数据更新.
Redis和Mysql数据同步的两种方案相关推荐
- redis与mysql数据同步_Redis与MySQL数据同步解决方案
数据库同步到Redis 我们大多倾向于使用这种方式,也就是将数据库中的变化同步到Redis,这种更加可靠.Redis在这里只是做缓存. 方案1 做缓存,就要遵循缓存的语义规定: 读:读缓存redis, ...
- SAP CRM和C4C数据同步的两种方式概述:SAP PI和HCI
SAP Cloud for Customer(C4C)和SAP其他传统产品进行数据同步的方式,如下图所示,可以使用SAP Netweaver Process Integration或者SAP HANA ...
- mongo数据同步的三种方案
(一)直接复制data目录(需要停止源和目标的mongo服务) 1.针对目标mongo服务已经存在,并正在运行的(mongo2-->mongo). 执行步骤: (1).停止源/目标服务器的mon ...
- win7两个mysql数据同步_两台服务器两个数据库怎么实现数据同步备份。
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 SQL Server 2008 镜像 环境设置. 初始环境: 1.主机 Win7 + SQL Server 2008 R2 IP地址:192.168.56 ...
- mysql数据没有同步更新_MySQL数据库主从没有同步的两种解决方案
MySQL数据库主从没有同步的两种解决方案 发布时间:2020-05-13 13:54:57 来源:亿速云 阅读:190 作者:三月 栏目:数据库 下文主要给大家带来MySQL数据库主从没有同步的两种 ...
- MySQL数据同步到 Redis 缓存的几种方法
1 Mysql查完数据,再同步写入到Redis中 缺点1:会对接口造成延迟,因为同步写入redis本身就有延迟,并且还要做重试,如果redis写入失败,还需要重试,那就更费时间了. 缺点2:不解耦,如 ...
- docker容器运行mysql持久化_docker容器实现数据持久化的两种方式及其区别
前言 这篇博文是我对docker实现数据持久化几种方式的特征进行一个总结. 在docker中,它的存储文件系统是在dockerhost上原有的xfs或ext4架设了一层文件系统:overlay2(将此 ...
- 归一化mysql函数_数据归一化和两种常用的归一化方法
数据归一化和两种常用的归一化方法 一.总结 一句话总结: min-max标准化:x* =(x-min)/(max-min):新数据加入,需重新计算max和min Z-score标准化:x* =(x-μ ...
- dapper mysql 批量_MySQL数据库之c#mysql批量更新的两种方法
本文主要向大家介绍了MySQL数据库之c#mysql批量更新的两种方法 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. 总体而言update 更新上传速度还是慢. 1: 简单的 ...
最新文章
- 放弃java转战kotlin,我的心路历程
- python类装饰器详解-Python 类装饰器解析
- Oracle 1204 RAC failover 测试 (一)
- hdu2457:DNA repair
- 敲7(升级版约瑟夫)
- 保送清华成博士,华为 12 年搞通信,他为何如此看待 5G ?| 人物志
- 关于聚类分析、判别分析、主成分分析、因子分析等多元统计分析方法
- c语言自行设计矩形类构造函数
- 太全面了,RF接口自动化框架项目实战
- 调试错误解决方案之VC++
- JAVA|IO流的练习
- 树莓派计算机组装,Samytronix Pi:用树莓派 DIY 的桌面计算机
- 仅为0.9兆 谷歌金山词霸1.5版本正式发布
- T6 根据书籍条形码ISBN查询书籍,完整的方案,可安装
- 【SpringBoot高级篇】springboot实现上传docdocx文件格式转pdf在线预览
- 高中计算机矩阵算法ppt,高中信息技术教科版必修1 数据与计算4.2 数值计算一等奖课件ppt...
- i3 10100F和i3 10105F差距大不大
- c语言 一元多项式展开括号,一元多项式Polynomial的C语言实现
- 【论文翻译】Occluded Prohibited Items Detection
- 服务器禁止访问文件,服务器文件夹访问权限设置 控制访问权限方法