【Redis】redis除了做缓存还能做什么
redis应该说是目前最受欢迎的nosql数据库之一了。redis通常被作为缓存组件,用作缓存数据。不过,除了可以缓存数据,其实redis可以做的事还有很多。下面列举几例,供大家参考。
1、最新列表
例如新闻列表页面最新的新闻列表,如果总数量很大的情况下,尽量不要使用select a from A limit 10,尝试redis的 LPUSH命令构建List,一个个顺序都塞进去就可以啦。不过万一内存清掉了咋办? (推荐学习:Redis视频教程)
也简单,查询不到存储key的话,用mysql查询并且初始化一个List到redis中就好了。
2、排行榜应用
实现这个功能主要用到的redis数据类型是redis的有序集合zset。zset 是set 类型的一个扩展,比原有的类型多了一个顺序属性,此属性在每次插入数据时会自动调整顺序值,保证value值按照一定顺序连续排列。
我们假设是一个游戏经验值排行榜,那主要的实现思路是:
1、在一个新的玩家参与到游戏中时,在redis中的zset中新增一条记录(记录内容看具体的需求)score为0
2、当玩家的经验值发生变化时,修改该玩家的score值
3、使用redis的ZREVRANGE方法获取排行榜
3、计数器应用
Redis的命令都是原子性的,你可以轻松地利用INCR、DECR命令进行原子性操作,来构建计数系统。由于单线程,可以避免并发问题,保证不会出错,而且100%毫秒级性能。
比如在一个 web 应用程序中,如果想知道用户在一年中每天的点击量,那么只要将用户 ID 以及相关的日期信息作为键,并在每次用户点击页面时,执行一次自增操作即可。
4、数据排重
Redis set是可以自动排重的,当你需要存储一个列表数据,又不希望出现重复数据时,set是一个很好的选择,并且set提供了判断某个成员是否在一个set集合内的重要接口。
实现方案:
set 的内部实现是一个 value永远为null的HashMap,实际就是通过计算hash的方式来快速排重的,这也是set能提供判断一个成员是否在集合内的原因。
5、实时的反垃圾系统
反垃圾系统通常都是基于关键词的,使用Redis储存关系词,能够利用Redis的高性能,为监控系统提供稳定及精确的实时监控功能,典型的案例如,邮件系统、评论系统等。
6、可以发布、订阅的实时消息系统
Redis中Pub/Sub系统可以构建实时的消息系统,比如,很多使用Pub/Sub构建的实时聊天应用。
设计思路:
服务端发送消息(含标题,内容),标题按照一定规则存入redis,同时标题(以最少的信息量)推送到客户端,客户点击标题时,获取相应的内容阅读.
如果未读取,可以提示多少条未读,redis能够很快记数
根据一定时间清理缓存
技术实现:
需要redis数据库,客户端websocket,服务器端websocket
7、队列应用
队列在现在程序中应用十分广泛,比如日志推送、任务处理等等。以往通常使用http sqs实现队列,其实,使用redis的list类型,也可以实现队列。
猜你喜欢
- 【Redis】Redis中缓存穿透、击穿、雪崩以及解决方案
- 目录一、什么是Redis二、什么是缓存穿透三、什么是缓存击穿四、什么是缓存雪崩一、什么是RedisRedis是一个开源的内存数据存储系统,也是一个高性能的键值存储数据库。它支持多种数据结构,包括字符串、哈希表、列表、集合以及有序集合。Redis的特点是快速、灵活和可扩展。首先,Redis是一个内存数据存储系统,这意味着它将所有数据存储在内存中,因此具有非常快的读写速度。相比于传统的磁盘存储系统,Redis可以提供非常低的读写延迟,使得它非常适合需要快速响应的应用场景,如缓存、实时计算等。其次,R
- 【Redis】Redis配置详解
- 目录一、Redis查看当前配置命令二、Redis基本配置三、RDB全量持久化配置(默认开启)四、AOF增量持久化配置五、Redis key过期监听配置六、Redis内存淘汰策略七、总结一、Redis查看当前配置命令# Redis查看当前全部配置信息 127.0.0.1:6379> CONFIG GET * # Redis查看当前指定配置信息 127.0.0.1:6379> CONFIG GET 配置名
- 【Redis】redis分布式缓存
- 目录一、单机安装Redis。二、Redis主从集群。2.1.集群结构2.2.准备实例和配置2.3.启动2.4.开启主从关系2.5.测试三、搭建哨兵集群。3.1.集群结构3.2.准备实例和配置3.3.启动3.4.测试四、搭建分片集群。4.1.集群结构4.2.准备实例和配置4.3.启动4.4.创建集群4.5.测试五、单点redis的问题。六、Redis持久化。1)RDB持久化。2) AOF持久化。3)RDB和AOF的对比。七、Redis主从。1)搭建主从架构。2) 主从数据同步原
- 【Redis】redis除了做缓存还能做什么
- redis应该说是目前最受欢迎的nosql数据库之一了。redis通常被作为缓存组件,用作缓存数据。不过,除了可以缓存数据,其实redis可以做的事还有很多。下面列举几例,供大家参考。1、最新列表例如新闻列表页面最新的新闻列表,如果总数量很大的情况下,尽量不要使用select a from A limit 10,尝试redis的 LPUSH命令构建List,一个个顺序都塞进去就可以啦。不过万一内存清掉了咋办? (推荐学习:Red
- 【Redis】Redis 配置文件详解
- Units 单位配置大小单位,开头定义了一些基本的度量单位,只支持bytes,不支持bit,大小写不敏感。# Redis configuration file example. # # Note that in order to read the configuration file, Redis must be # start