1/缓存
redis可以作为应用程序的缓存, 减少数据库的读取压力, 提高数据的访问速度. redis缓存是存储在内存中的, 所以从内存中存取数据的速度很快.
2/会话存储
在web应用中, redis可以用来存储用户的会话信息, 你如 登录的状态, 购物车的内容等.
3/排行榜和计数器
redis支持原子性操作, 非常适合实现实时的排行榜, 点赞数, 访问数等功能,
4/消息队列
redis可以作为消息队列使用, 用于处理异步的任务, 例如邮件发送后台任务的处理 比如要给100个人发送邮件, 那么上游可以先把这100个人写到redis中, 然后 下游在发送邮件的时候, 从redis中读取数据,然后发送成功后, 再删除该key就可了.
这是异步的任务. 对实时性要求也是很高.
5/实时分析
redis可以用来进行实时的分析工作.
例如用户的行为实时分析,实时统计信息等.
6/分布式锁
在分布式系统中, redis可以用来实现分布式锁, 确保在多个节点之间共享资源的一致性.
7/发布和订阅
redis提供了发布和订阅模式. 可以用来实现消息广播, 例如实时通知系统.
8/限流
redis可以用来实现限流功能, 防止系统过载, 例如api调用的频率限制.
9/数据过期
redis支持设置数据的过期时间, 自动清理过期的数据, 适用于临时的数据存储.
10/全页缓存
redis可以缓存整个页面的输出, 减少数据库的查询和页面渲染的时间.
11/社交功能
在社交网络的应用中, redis可以用于存储好友关系, 用户状态更新.
12/实时推荐系统
redis可以用于存储用户的行为数据和偏好, 实现实时的推荐.
13/地址位置信息
redis支持geo索引, 可以用于实现地址位置相关的查询和推荐.
14/任务调度
redis可以用于任务调度,例如定时任务的执行
15/数据的共享
redis可以用在微服务之间共享数据的媒介 .
16/持久化
虽然redis是内存数据库, 但是它也支持数据的持久化, 可以在系统故障后恢复数据, 有rdb和oaf持久化数据的方式.