[发明专利]一种基于Redis的实时缓存更新方法和系统在审
申请号: | 201810300592.7 | 申请日: | 2018-04-04 |
公开(公告)号: | CN108491332A | 公开(公告)日: | 2018-09-04 |
发明(设计)人: | 潘帅伟 | 申请(专利权)人: | 浙江小泰科技有限公司 |
主分类号: | G06F12/0804 | 分类号: | G06F12/0804 |
代理公司: | 北京维正专利代理有限公司 11508 | 代理人: | 戴锦跃 |
地址: | 310051 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据库 缓存数据库 更新信息 实时缓存 实时获取 更新 数据缓存技术 数据库数据 逻辑发生 实时修改 数据对应 数据修改 同步逻辑 信息解析 信息修改 信息转化 减小 推送 解析 概率 混乱 | ||
本发明涉及数据缓存技术领域,公开了一种基于Redis的实时缓存更新方法和系统,包括以下步骤,S1、实时获取用户对数据库中的数据的修改信息;S2、基于修改信息修改数据库中的数据并对应数据库数据的修改生成binlog信息;S3、接收数据库推送的binlog信息,将binlog信息解析;S4、获取并将解析后的binlog信息转化为与缓存数据库中数据对应的更新信息;S5、基于更新信息修改缓存数据库中的数据;通过实时获取对数据库的数据的修改信息,实时修改数据库中的数据,从而完成数据库中的数据修改;将同步逻辑和更新缓存数据库中的数据的逻辑分开,分为两个逻辑。先完成数据库的修改,然后根据数据库的修改来修改缓存数据库中的数据,从而减小了逻辑发生混乱的概率。
技术领域
本发明涉及数据缓存技术领域,具体涉及一种基于Redis的实时缓存更新方法和系统。
背景技术
缓存就是数据交换的缓冲区,当某一硬件要读取数据时,会首先从缓存中查找需要的数据,如果找到了则直接执行,找不到的话则从内存中找。由于缓存的运行速度比内存快得多,故缓存的作用就是帮助硬件更快地运行。
因为缓存往往使用的是RAM(断电即掉的非永久储存),所以在用完后还是会把文件送到硬盘等存储器里永久存储。电脑里最大的缓存就是内存条,最快的是CPU上镶的L1和L2缓存,显卡的显存是给显卡运算芯片用的缓存,硬盘上也有16M或者32M的缓存。
redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
canal的原理是模拟Slave向Master发送请求,canal解析binlog,但不将解析结果持久化,而是保存在内存中,每次有客户端读取一次消息,就删除该消息。
消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过写和检索出入列队的针对应用程序的数据(消息)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。排队指的是应用程序通过队列来通信。队列的使用除去了接收和发送应用程序同时执行的要求。
在实际缓存过程中,通常会有以下几种方案对缓存中的内容进行同步。
方案一,定时同步缓存的方案。通过一个预设的时间将数据库的数据同步到缓存服务器中。预设的时间通常在秒以上,否则计算机会长时间处在工作状态,浪费计算机的性能。这样的方案,在这个预设时间段内,用户变更的数据不能及时的显示出来。
方案二,在后台管理服务中嵌入同步缓存的功能。在此方案中,用户修改需要进行缓存的数据的同时修改缓存服务器中的数据。这样的方案,缓存同步逻辑会耦合在业务代码逻辑中,在缓存数据库中存储的数据可能存储在多个key当中,在修改缓存数据库中的数据时,需要调用所有存储有该数据的key并进行更改。在数据多时,缓存逻辑和同步逻辑混合在一起,缓存的逻辑变大,容易造成同步逻辑和业务逻辑的混乱。
发明内容
针对现有技术存在的不足,本发明的目的在于提供一种基于Redis的实时缓存更新方法。
为实现上述目的,本发明提供了如下技术方案:
一种基于Redis的实时缓存更新方法,包括以下步骤,
S1、实时获取用户对数据库中的数据的修改信息;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江小泰科技有限公司,未经浙江小泰科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810300592.7/2.html,转载请声明来源钻瓜专利网。