Redis 都有哪些应用场景?
2个回答
2021-05-13 · 学动漫、设计、电竞、电商、短视频、软件等
关注
展开全部
缓存:这应该是 Redis 最主要的功能了,也是大型网站必备机制,合理地使用缓存不仅可以加 快数据的访问速度,而且能够有效地降低后端数据源的压力。
共享Session:对于一些依赖 session 功能的服务来说,如果需要从单机变成集群的话,可以选择 redis 来统一管理 session。
消息队列系统:消息队列系统可以说是一个大型网站的必备基础组件,因为其具有业务 解耦、非实时业务削峰等特性。Redis提供了发布订阅功能和阻塞队列的功 能,虽然和专业的消息队列比还不够足够强大,但是对于一般的消息队列功 能基本可以满足。比如在分布式爬虫系统中,使用 redis 来统一管理 url队列。
分布式锁:在分布式服务中。可以利用Redis的setnx功能来编写分布式的锁,虽然这个可能不是太常用。 当然还有诸如排行榜、点赞功能都可以使用 Redis 来实现,但是 Redis 也不是什么都可以做,比如数据量特别大时,不适合 Redis,我们知道 Redis 是基于内存的,虽然内存很便宜,但是如果你每天的数据量特别大,比如几亿条的用户行为日志数据,用 Redis 来存储的话,成本相当的高。
共享Session:对于一些依赖 session 功能的服务来说,如果需要从单机变成集群的话,可以选择 redis 来统一管理 session。
消息队列系统:消息队列系统可以说是一个大型网站的必备基础组件,因为其具有业务 解耦、非实时业务削峰等特性。Redis提供了发布订阅功能和阻塞队列的功 能,虽然和专业的消息队列比还不够足够强大,但是对于一般的消息队列功 能基本可以满足。比如在分布式爬虫系统中,使用 redis 来统一管理 url队列。
分布式锁:在分布式服务中。可以利用Redis的setnx功能来编写分布式的锁,虽然这个可能不是太常用。 当然还有诸如排行榜、点赞功能都可以使用 Redis 来实现,但是 Redis 也不是什么都可以做,比如数据量特别大时,不适合 Redis,我们知道 Redis 是基于内存的,虽然内存很便宜,但是如果你每天的数据量特别大,比如几亿条的用户行为日志数据,用 Redis 来存储的话,成本相当的高。
ZESTRON
2024-09-04 广告
2024-09-04 广告
在Dr. O.K. Wack Chemie GmbH,我们高度重视ZESTRON的表界面分析技术。该技术通过深入研究材料表面与界面的性质,为提升产品质量与可靠性提供了有力支持。ZESTRON的表界面分析不仅涵盖了相变化、化学反应、吸附与解吸...
点击进入详情页
本回答由ZESTRON提供
2021-09-22 · 百度认证:北京一天天教育科技有限公司官方账号,教育领域创作者
关注
展开全部
缓存:
string类型,可以做热点数据缓存(如报表),对象缓存、全页缓存、可以提升热点数据的访问数据;
数据共享分布式:
string类型,因为Redis是分布式的独立服务,可以在多个应用之间共享,例如分布式Session;
分布式锁:
string类型setnx方法,只有不存在时才能添加成功,返回true;
全局ID:
int类型,incrby,利用原子性,incrby userid 1000,分库分表的场景,一次性拿一段;
计数器:
int类型,incr方法,例如文章的阅读量、微博点赞数、允许一定的延迟,先写入Reids,再定时同步到数据库;
限流:
int类型,incr方法,以访问者的ip和其他信息作为key,访问一次增加一次计数,超过次数则返回false;
位统计:
string类型的bitcount(1.6.6的bitmap数据结构介绍),字符是以8位二进制存储的,例如:在线用户统计,留存用户统计,支持按位与、按位或等等操作;
购物车:
String或hash。所有String可以做的hash都可以做;
消息队列:
List提供了两个阻塞的弹出操作:blpop/brpop,可以设置超时时间,队列:先进先除:rpush
blpop,左头右尾,右边进入队列,左边出队列,栈:先进后出:rpush、brpop;
抽奖:
自带一个随机获得值。
string类型,可以做热点数据缓存(如报表),对象缓存、全页缓存、可以提升热点数据的访问数据;
数据共享分布式:
string类型,因为Redis是分布式的独立服务,可以在多个应用之间共享,例如分布式Session;
分布式锁:
string类型setnx方法,只有不存在时才能添加成功,返回true;
全局ID:
int类型,incrby,利用原子性,incrby userid 1000,分库分表的场景,一次性拿一段;
计数器:
int类型,incr方法,例如文章的阅读量、微博点赞数、允许一定的延迟,先写入Reids,再定时同步到数据库;
限流:
int类型,incr方法,以访问者的ip和其他信息作为key,访问一次增加一次计数,超过次数则返回false;
位统计:
string类型的bitcount(1.6.6的bitmap数据结构介绍),字符是以8位二进制存储的,例如:在线用户统计,留存用户统计,支持按位与、按位或等等操作;
购物车:
String或hash。所有String可以做的hash都可以做;
消息队列:
List提供了两个阻塞的弹出操作:blpop/brpop,可以设置超时时间,队列:先进先除:rpush
blpop,左头右尾,右边进入队列,左边出队列,栈:先进后出:rpush、brpop;
抽奖:
自带一个随机获得值。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询