前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >redis应用的总结

redis应用的总结

作者头像
wblearn
发布于 2018-08-27 09:35:45
发布于 2018-08-27 09:35:45
3570
举报
文章被收录于专栏:wblearnwblearn

#写在前面

对最近项目应用redis做一个简单总结,项目中的营业网点资料和客户资料等模块以后的资料量势必会随着业务的扩张会越来越大,可能会造成系统性能瓶颈及用户体验不佳等,所以根据老大的建议,把相应模块对应的表名+表关键字作为key,优先从redis缓存中拿数据,减少对数据库CRUD操作避免负载过大。

#这里,我们会专门写一个接口来实现redis处理的逻辑

查询的逻辑:根据我们生成的key,来判断redis里是否存在这样的key,若存在,直接从redis里面取,不存在,从数据库(ORACLE)里面取。注意:在从redis里取得时候,会做这样一个操作:就是我们定义了一个缓存对象CacheObject,缓存对象有两个属性,一个布尔值用来判断redis是否需要同步更新oracle最新数据,另一个是泛型的数据集合,至于为什么是泛型,是因为这样我们查询哪个模块的数据就返回哪个模块的数据而不必为每个模块重新去定义。当缓存对象里的布尔值为true时,从redis里获得数据后把布尔值从新设置为false,并更新缓存对象到redis里。

这部分的代码如下:

定义的缓存对象:

查询缓存处理:

通用查询接口:

更新的逻辑:

一旦我们修改或者增加资料到数据库(oracle),我们同时设置缓存对象的布尔值为true,并将其存到redis中,当下次我们查询的时候会根据这个布尔值同步最新数据到redis(见上面的查询逻辑)

更新逻辑代码:

删除逻辑:

删除数据库数据时,同时删除redis中的数据

删除代码:

#写在最后

以上只是让大家知道redis缓存的处理逻辑,如果大家有更好的意见,欢迎到博客左侧的小窗骚扰我(...呸呸呸...联系我)。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016.07.26 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
redis的问题_redis高级数据类型
11.Redis的缓存优化方向有哪些?你们怎么理解的?对热点键的注意事项设计什么?
全栈程序员站长
2022/09/24
4800
redis的问题_redis高级数据类型
redis缓存介绍与常见问题(精心准备)
对于web来说,是用户量和访问量支持项目技术的更迭和前进。随着服务用户提升。可能会出现一下的一些状况:
bigsai
2019/09/24
7410
redis缓存介绍与常见问题(精心准备)
深入mall项目:Redis源码深度解析,性能提升背后的5大关键技巧!
https://cloud.tencent.com/developer/article/2465647?shareByChannel=link
忆愿
2024/11/14
1050
深入mall项目:Redis源码深度解析,性能提升背后的5大关键技巧!
③使用Redis缓存,并增强数据一致性。
缓存数据存储于代码中,而代码运行在内存中,内存的读写性能远高于磁盘,缓存可以大大降低用户访问并发量带来的服务器读写压力。
.29.
2024/01/09
2550
③使用Redis缓存,并增强数据一致性。
彻底搞懂Redis击穿、雪崩、穿透(下)
贰零贰肆年的第一篇Blog,也是Redis缓存三大问题的第三篇,继第一篇发布已经过去一个半月的时间,期间还有热情的小伙伴催更(hahaha~
测试蔡坨坨
2024/01/09
2930
彻底搞懂Redis击穿、雪崩、穿透(下)
Redis应用—5.Redis相关解决方案
线上Redis比较严重的问题排序是:数据库和缓存一致性、热key、大value、缓存雪崩限流降级、内存不足强制回收
东阳马生架构
2025/03/06
1540
Redis项目案例
项目源码 链接:https://pan.baidu.com/s/1Bat7QS6akuSF4k6MprIFiw 提取码:z23d
时间静止不是简史
2020/07/27
1.6K0
Redis项目案例
【Redis】SpringBoot集成Redis分布式锁以及Redis缓存
第二个spring-boot-start-cache的依赖,是使用缓存注解需要的,我在项目中没有引入。 因为我在websocket中已经引入了。 查询依赖关系 ctrl+shift+alt+u 快捷键(也可以在pom.xml文件上右键->Maven->Show Dependencies…)查询maven包依赖引入关系,ctrl+f搜索包
谙忆
2021/01/21
9370
如何保证MySQL和Redis的数据一致性?10张图带你搞定!
导语 | 本文的主要思路是首先带大家认识了解MySQL和Redis的数据一致性情况,然后进行反推不一致的情况,从而进行探究单线程中的不一致的情况。同时探究多线程中的不一致的情况,拟定数据一致性策略。 一、什么是数据的一致性 “数据一致”一般指的是:缓存中有数据,缓存的数据值=数据库中的值。但根据缓存中是有数据为依据,则“一致”可以包含两种情况: 缓存中有数据,缓存的数据值=数据库中的值 缓存中本没有数据,数据库中的值=最新值(有请求查询数据库时,会将数据写入缓存,则变为上面的“一致”状态) “数据不一
腾讯云开发者
2021/10/14
4.8K0
8张图带你分析Redis与MySQL数据一致性问题
对于Web来说,并发量和访问量增加一定程度上推动项目技术和架构的更迭和进步。可能会有以下的一些状况:
bigsai
2020/11/11
4840
8张图带你分析Redis与MySQL数据一致性问题
Redis应用—1.在用户数据里的应用
接下来介绍的社区电商是以Redis作为主体技术、以MySQL和RocketMQ作为辅助技术实现的。
东阳马生架构
2025/02/27
750
Redis进阶学习08--多级缓存
传统的缓存策略一般是请求到达Tomcat后,先查询Redis,如果未命中则查询数据库,如图:
大忽悠爱学习
2022/05/11
2.8K0
Redis进阶学习08--多级缓存
解读Redis的四种企业级解决方案
然而当我们在使用Redis时会遇到一些意外情况影响数据同步的一致性,从而影响到项目的数据查询的正确性;下面是使用Redis时的常见问题以及解决方案:
后端小白
2025/01/29
1990
解读Redis的四种企业级解决方案
缓存数据库Redis
Redis基本概念和NOSQL 1. 概念: redis是一款高性能的NOSQL系列的非关系型数据库 1.1.什么是NOSQL NoSQL(NoSQL = Not Only SQL),意即“不仅仅是SQL”,是一项全新的数据库理念,泛指非关系型的数据库。 随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点
不愿意做鱼的小鲸鱼
2022/09/24
2.6K0
缓存数据库Redis
Redis缓存实现及其常见问题解决方案
Redis 缓存是 Redis 的一种主要应用场景。通过将热点数据存储在内存中,可以大大提高应用的读取速度,从而提高应用的性能。
栗筝i
2023/10/16
6870
Redis缓存实现及其常见问题解决方案
Redis应用—3.在购物车里的应用
2.购物车的复杂缓存与异步落库(Sorted Set + Hash -> hPut + zadd)
东阳马生架构
2025/03/04
940
深入探索Java开发世界:Redis~类型分析大揭秘
ps:Redis事务并不是严格的ACID事务,它没有提供隔离级别和回滚日志等特性。在Redis事务中,如果某个命令执行失败,后续的命令仍然会继续执行,而不会回滚到事务开始之前的状态,对于强一致性要求较高的场景,Redis事务可能不适用。
忆愿
2025/01/13
1010
深入探索Java开发世界:Redis~类型分析大揭秘
重学SpringBoot系列之redis与spring cache缓存
本节的目的不在于去教大家理解docker容器(讲docker就脱离了我们课程的核心,我们的课程是Spring Boot 不是docker),而是希望通过docker的方式快速的为大家搭建一个redis数据库,从而方便大家学习使用。
大忽悠爱学习
2021/12/07
1.3K0
重学SpringBoot系列之redis与spring cache缓存
Redis进阶学习02---Redis替代Session和Redis缓存
https://gitee.com/DaHuYuXiXi/redis-combat-project
大忽悠爱学习
2022/05/09
1.1K0
Redis进阶学习02---Redis替代Session和Redis缓存
使用redis缓存mysql数据
MySQL是一种关系型数据库管理系统,用于存储数据。在高并发的场景下,MySQL的读写性能往往成为瓶颈。为了提高应用程序的性能和响应速度,可以使用缓存技术,将经常访问的数据缓存到内存中,避免频繁地读取数据库。
堕落飞鸟
2023/03/31
2.5K0
相关推荐
redis的问题_redis高级数据类型
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文