了解Redis常见应用场景
设计思路:
公众号发布消息时,向订阅本公众号的用户(mess:1)推送(将订阅消息id通过lpush放入用户的list中),模拟过程。
模拟过程:
// 推送消息
lpush mess:1 999
lpush mess:1 1000
lpush mess:1 1010
// 查看消息,返回结果1010 1000 999
lrange mess:1 0 -1
四、Set 场景限时抽奖活动:例如微信有个活动,活动id为2,如何基于Redis设计实现。
设计思路:
用户点击立即参与后,将用户id保存到活动id的集合中,利用Set集合的元素唯一性可查看参加用户、参加用户数量等等。
模拟过程:
// 用户user:1 user:2 user:3参加抽奖活动act:888
sadd act:888 user:1 user:2 user:3
// 模拟一次性随机抽奖1名
srandmember act:888
// 模拟两次抽奖,两次抽奖不重复,使用spop命令,抽取中的用户会从set中移除
spop act:888
spop act:888
好友关系:共同关注,我关注的人也关注了他,我可能认识的人
注: 如果数据量大的情况下使用大数据分析
设计思路:两个集合取交集
模拟过程:
// 三个用户关注的人
sadd user:1 zhangsan lisi wangwu
sadd user:2 zhangsan liliu wanger wangwu
sadd user:3 list wangwu liliu
// user:1和user:2共同关注的人,取交集,返回zhangsan wangwu
sinter user:1 user:2
五、zSet 场景各种榜单:
例如百度新闻排名
设计思路:
将新闻id作为member,点击次数设置为score,每点击一次score+1,当然,为了每日榜单,member在设计时可以加上后缀用于日期区分,例如news:20191216、news:20191217 。
模拟过程:
// 增加热点新闻
zadd topic:20191216 100 new:1 200 new:2 150 new:3 500 new:4
// new:1点击了120次,点击数变为220
zincrby topic:20191216 120 new:1
// 查看今日排行前3名,返回 new:4 500 new:1 220 new:2 200
zrevrange topic:20191216 0 2 withscores
zadd topic:20191217 110 new:1 200 new:2 150 new:3 100 new:4
zadd topic:20191218 110 new:5 200 new:2 150 new:6 100 new:7
// 合并三日的数据
zunionstore topic:3day 3 topic:20191216 topic:20191217 topic:201912168
// 查看近三日排行榜前三名,返回new:4 600 new:2 600 new:1 330
zrevrange topic:3day 0 2 withscores
本篇文章到此结束,如果您有相关技术方面疑问可以联系我们技术人员远程解决,感谢大家支持本站!
我想要获取技术服务或软件
服务范围:MySQL、ORACLE、SQLSERVER、MongoDB、PostgreSQL 、程序问题
服务方式:远程服务、电话支持、现场服务,沟通指定方式服务
技术标签:数据恢复、安装配置、数据迁移、集群容灾、异常处理、其它问题
本站部分文章参考或来源于网络,如有侵权请联系站长。
数据库远程运维 了解Redis常见应用场景
相关文章
- 了解Redis原子原理:强大而安全(redis原理原子)
- 强大的分布式存储:Redis拯救数据持久化(分布式数据库redis)
- 深入了解:Redis集群方案分类指南(redis集群方案有几种)
- 如何快速检测Redis内存使用大小(怎么看redis大小)
- 利用Redis实现高效率常用缓存(常用缓存redis)
- 深入研究如何查看Redis客户端IP地址(查看redis客户端ip)
- 的应用数据仓库中 Redis 显著增强效率(数据仓库中redis)
- 轻松搭建Redis服务及开启实例应用(搭建redis及实例使用)
- 将用户信息安全存储于Redis中(把用户信息存入redis)
- 互联网技术中利用Redis获得更好的体验(互联网redis应用场景)
- Redis秒秒极速主键生成技术(主键生成redis)
- 突破极限,姬野尤里的Redis(姬野尤里redis)
- 如何关闭Redis操作界面(关闭redis操作界面)
- 深入了解Redis查看配置的方法(如何查看redis的配置)
- Redis最适合存储什么(什么适合放在redis)
- Redis技术一个简单的介绍(什么是redis讲解)
- Redis的对象存储与应用(对象存入redis)
- Redis在项目中的应用探索运用Redis的多重价值(redis项目中用途)
- Redis应用与面试提问解析(redis 面试提问)
- 开创自动化Redis集群Git部署(redis集群git)
- Redis重复订阅带来的挑战(redis 重复订阅通道)
- 基于Redis的评论系统设计(redis 评论设计)
- 利用Redis广泛应用的多种场景(redis 能应用的场景)
- Redis连接池如何优化实现(redis连接池怎么使用)
- 深入了解Redis缓存组件哪些选择(redis缓存组件有哪些)
- 些场景中应用Redis缓存数据库在何种场景中的应用(redis缓存数据库在哪)
- 性Redis查询库可靠实时可用性令人信服(redis查询库的可用)