redis面试题

redis常支持的数据结构

在这里插入图片描述
string,hash,list,set,sort set

在这里插入图片描述
在这里插入图片描述
使用于只需要改部分字段的场景
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
setnx 1001 true 【如果redis中已有1001,则不执行本次操作,没有则执行set操作】
只有一条线程能执行成功,执行不成功的线程就返回
在这里插入图片描述
8080执行set 1001 true,8090也执行,都存入数据库
后端服务繁忙,请稍后再试
在这里插入图片描述
在这里插入图片描述

多个请求过来,redis由于是单线程,所以会根据请求的先后顺序放入到队列中。一次只执行一条命令。单线程:天生就可以防并发。
在这里插入图片描述
这一条命令就可以解决并发问题。【redis单台是几万并发】
在这里插入图片描述
批量生产:便宜且快

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
map(key:user) value< map >(key:1:name,1:balance)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
redis轻松实现高可用(并且它本身就有数据持久化:下次加载数据就读出来了)
在这里插入图片描述
redis集群也不会存在并发问题。
8001分配的槽位是0–1,8002分配的是1000–1001

购物车几千上万商品都可能存储在一个key上

数据分片是针对key去分片的

hash数据结构+redis集群【它没法帮你做数据分片存储,会导致数据过于集中】
在这里插入图片描述
在这里插入图片描述
生产者:不但send消息到队列中
消费者:不断监听是否有消息进来,没有就监听者,有就取消息。(如果没有消息,消费者就会阻塞在阻塞队列这里—阻塞队列即消息队列)通过brpop命令实现阻塞

在这里插入图片描述
关注了1000个大V,每个大v每天发两条消息【消息列表一天有2000消息】。现在有1亿用户。
现在设计数据库完成微博,微信号的消息流(还有保证性能)----redis做好了,可以直接不用数据库,()1T=1000G,几千redis服务器。千万级并发架构用redis
内存几十G放热数据,全量数据放在磁盘中的【几百上千T】,
在这里插入图片描述
reids来实现不用考虑性能,因为redis性能很高,而且单个redis不够,可以搭建redis集群。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值