Redis和数据库的读写操作分析
Redis和数据库的读操作
数据缓存往往会在Redis上设置超时时间,当设置Redis的数据超时后,Redis就没法读出数据了,这个时候就会触发程序读取数据库,然后将读取的数据库数据写入Redis(此时Redis会给Redis重设超时时间),这样程序在读取的过程中就能按一定的时间间隔刷新数据了。
下面写一下这个流程的伪代码:
public DataObiect readMethod(args){//尝试从Redis中读取数据DataObject data=getRedis(key);if(data == null){//从数据库中读取数据data=getFromDataBase();//重新写入Redis,以便以后读出writeRedis(key,data);//设置Redis的超时时间为5分钟setRedisExpire(key,5);}return data;}
Redis和数据库的写操作
写操作要考虑数据一致性的问题,尤其是那些重要的业务数据,所以首先考虑从数据库中读取最新的数据,然后对数据进行操作,最后把数据写入Redis缓存中。
下面写出这个流程的伪代码:
public DataObject writeMethod(args){//从数据库里读出最新数据DataObject dataObject=getFromDataBase(args);//执行业务逻辑ExecLogic(dataObject);//更新数据库数据updataDataBase(dataObject);//刷新Redis缓存updataRedisData(dataObject);
}
Redis和数据库的读写操作分析相关推荐
- Redis 缓存数据库
Redis 缓存数据库 第1章 Redis简介: redis是使用C语言编写的开源的,支持网络,基于内存,可持久性的键值对存储数据库,2013年5月之前,Redis是最流行的键值对存储数据库 Redi ...
- redis实现数据库(一)
转:https://www.cnblogs.com/beiluowuzheng/p/9738159.html 服务器中的数据库 Redis服务器将所有数据库都保存在服务器状态redis.h/redis ...
- Redis (二) 数据库
前言 本文基于 黄建宏-<Redis设计与实现>总结.第二部分为Redis 数据库,RDB持久化,AOF持久化,事件,客户端,服务器 目录 前言 数据库 服务器中的数据库 服务器数据库示例 ...
- 虹科干货|Redis企业版数据库为企业「数据安全」叠加最强Buff!
虹科干货|Redis企业版数据库为企业「数据安全」叠加最强Buff! "这是一场可预见的噩梦!" 近期,黑客通过攻击亚洲最大两家数据中心-万国数据和新科电信媒体,获取国际巨头企业的 ...
- Redis缓存数据库
目录 NoSQL NoSQL特点 常见的NoSQL数据库 redis MongoDB 行式存储数据库 列式存储数据库 redis简介 安装redis redis启动服务 前台启动 提取信息 后台启动 ...
- Redis高性能数据库
经常用redis做什么? 在公司中经常用redis来做数据库的缓存,用来缓存一些经常被客户端访问到的数据,从而减轻后端数据库的压力 常见的缓存数据库有哪些? Redis Memcache ...
- Redis——单机数据库的实现
数据库 Redis服务器将所有数据库都保存在服务器状态redis.h/redisServer结构的db数组中 db数组的每个项都是一个redis.h/redisDb结构 每个redisDb结构代表一个 ...
- 基于 EntityFramework 的数据库主从读写分离架构(1) - 原理概述和基本功能实现...
回到目录,完整代码请查看(https://github.com/cjw0511/NDF.Infrastructure)中的目录: src\ NDF.Data.EntityFramework\Maste ...
- mysql读写分离_Mysql数据库09MySQL读写分离
Mysql数据库09-MySQL读写分离 一.读写分离应用案例分析 在企业用户中,在大量的数据请求下,单台数据库将无法承担所有读写操作.解决方法:配置多台数据库服务器以实现主从复制+读写分离. 二.读 ...
最新文章
- leetcode算法题--Magical String
- Zookeeper分布式一致性原理(十一):Zookeeper在JStorm中应用
- ROS2 on android,ROS2 通过Debian安装ROS2
- 无法在web服务器上启动调试 您不具备调试此应用程序的权限
- 网络视频贴片广告全面推行第三方监测
- Linux Shell脚本入门教程系列之(十一)Shell while循环
- linux升级openssh8.2,openssh7更换升级位8.2版本过程
- python编写鸡兔同笼程序设计_Python少儿编程:鸡兔同笼,涨知识了
- ASP.NET和ASP程序防止在IE中进行缓存
- Semantic-UI的React实现(一):架构介绍
- 基于java的户籍管理系统的设计与实现
- 2020-Point attention network for semantic segmentation of 3D point clouds
- 分析项目-AQI分析与预测
- Wireshark分析sql布尔盲注流量包
- 基于javaweb个人网站论坛的设计与实现(源码、论文、毕业设计、数据库文件)
- Usually, this means that the Expanded widget has the wrong ancestor RenderObjectWidget. Typically, E
- linux 离线地图开发包,Mapbox本地离线部署
- Android全面屏适配笔记
- xgen 毛发guide历史被清理解决方法
- cocos creator 3D | 拇指投篮 | 3D项目入门实战