NoSQL之Redis(三) --- Redis在项目中的运用

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介:


NoSQL之Redis(三) --- Redis在项目中的运用


 

         又是一个喧闹的新年,少了的不是年味,变了的是人们的内心。难得的假期静下心来回顾上一年,展望下一年。思考,总结,陪陪家人是否更值得去做?养精蓄锐,是不是又能更好迎接来年的挑战?年轻不是放纵的资本,需要的事更好的珍惜眼前的时光。

 

         本文笔者会简单的描述一下Redis在“jrkj”这个项目中的哪些场景中使用的,以及是如何使用的。

 

         应用场景一

 

         首页

 

         寻找讲师

 

         讲师入门

 

         我们知道在每一个项目中都会存在一些不会经常变动的数据,如果每次需要这些数据的时候都从数据库中读取的话,一方面是效率问题,另一方面也会增加数据库中的压力。

         在上述三个地方系统都会默认的先从redis中读取数据,只要将redis中没有数据或者数据不全时才会从数据库中读取,并同时向Redis中备份一份(这样下一个请求来了又会从redis中读取)。

        

         应用场景二


         查看更多讲师(功能未上线)


         在系统中我们还会遇到一些这样的情况,分页查询查询数据,默认我会将第一页的数据存入缓存中,第一次查询第二页的时候我会将第二页的数据也存入缓存中,以此类推。同样是减少直接对数据库的操作。

 

         应用场景三


         个人中心


         当用户登录的时候,我会将其个人信息存入redis中,如果用户登录之后在其个人中心的相关页面需要用的其个人信息的地方直接从redis中读取。当用户修改个人信息的时候同时会更新redis中的数据,这样就保证了redis中的数据和数据库中是同步的。

 

         应用场景四

 

         分布式问题

         该系统属于分布式系统,不可避免的就有这么一个问题需要解决——如何保证session共享的问题。我使用的是在用户登录的时候生成一个唯一标识(UUID)保证用户的唯一性,将其如用户信息一同放入缓存中,登录之后用户访问任何页面都会带着一个UUID通过这个UUID作为Key可以在缓存中获取该用户的个人信息。

 

         总结

         产品年前刚上线,并没有正真的运行起来,需要优化的地方还有很多,年后融资推广什么的希望一切都顺利。其实,刚才在场景一种笔者并没有说明如何将那些静态数据存入redis以及什么时候去更新这些数据,怎么更新这些数据然后存入缓存中,笔者都没有没有详细的写明,欲知原因请阅读下一篇博客。

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
3月前
|
负载均衡 Java 应用服务中间件
基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖(一)
基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖(一)
|
4天前
|
NoSQL MongoDB Redis
Python与NoSQL数据库(MongoDB、Redis等)面试问答
【4月更文挑战第16天】本文探讨了Python与NoSQL数据库(如MongoDB、Redis)在面试中的常见问题,包括连接与操作数据库、错误处理、高级特性和缓存策略。重点介绍了使用`pymongo`和`redis`库进行CRUD操作、异常捕获以及数据一致性管理。通过理解这些问题、易错点及避免策略,并结合代码示例,开发者能在面试中展现其技术实力和实践经验。
31 8
Python与NoSQL数据库(MongoDB、Redis等)面试问答
|
27天前
|
缓存 NoSQL Java
Java项目:支持并发的秒杀项目(基于Redis)
Java项目:支持并发的秒杀项目(基于Redis)
26 0
|
1月前
|
缓存 NoSQL Java
spring cache整合redis实现springboot项目中的缓存功能
spring cache整合redis实现springboot项目中的缓存功能
45 1
|
3月前
|
XML 存储 小程序
基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖微信小程序端(十四)
基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖微信小程序端(十四)
|
3月前
|
存储 小程序
基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖微信小程序端(十三)
基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖微信小程序端(十三)
|
3月前
|
小程序 测试技术 数据库
基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖微信小程序端(十二)
基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖微信小程序端(十二)
|
3月前
|
缓存 NoSQL Java
基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖微信小程序端(十一)
基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖微信小程序端(十一)
|
3月前
|
小程序 测试技术
基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖微信小程序端(十)
基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖微信小程序端(十)
|
3月前
|
存储 小程序 Java
基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖微信小程序端(九)
基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖微信小程序端(九)