福大大架构师每日一题
福大大架构师每日一题
全部文章
福大大架构师每日一题
归档
标签
去牛客网
登录
/
注册
福大大架构师每日一题的博客
最新面试题,针对高级开发人员和架构师。内容是后端、大数据和人工智能。
全部文章
/ 福大大架构师每日一题
(共17篇)
2020-07-23:开启rdb后,redis的启动流程是怎样的?
来自专栏
福哥答案2020-07-23: Redis 在完成初始化全局服务器配置,加载配置文件,初始化服务器,开始加载持久化的数据到内存中。如果启用了 appendonly 了,则Redis从 appendfile 加载数据,否则就是开启了rdb,从dbfile 加载数据。appendfile 中保存的是re...
缓存
redis
2020-07-23
3
572
2020-07-22:你觉得使用redis的主从复制的时候有什么点需要注意的吗?
来自专栏
福哥答案2020-07-22: 1.主从同步缓冲区设定大小,如果进行全量复制耗时太长,进行部分复制时发现数据已经存在丢失的情况,必须进行第二次全量复制,致使slave陷入死循环状态。在全量复制的时候,最好做好监控。2.有时候,redis存储过多,全量同步变得不可接受。这时考虑如果增量复制时,发生阻塞...
缓存
redis
2020-07-22
3
573
2020-07-21:简述redis主从同步的过程。
来自专栏
福哥答案2020-07-21: 1.从服务发送一个sync同步命令给主服务要求全量同步。2.主服务接收到从服务的sync同步命令时,会fork一个子进程后台执行bgsave命令(非阻塞)快照保存,生成RDB文件,并将RDB文件发送给从服务。3.从服务再将接收到的RDB文件载入自己的redis内存。4...
缓存
redis
2020-07-21
3
0
2020-07-20:你觉得redis有什么缺点,给你改进的话你会怎么改进?
来自专栏
福哥答案2020-07-20: 1.由于 Redis 是内存数据库,短时间内大量增加数据,可能导致内存不够用。2.redis是单线程的,单台服务器无法充分利用多核服务器的CPU。3.遇到大量查询时容易阻塞。4.缓存和数据库双写一致性问题。5.缓存雪崩问题。6.缓存击穿问题。7.缓存的并发竞争问题。8...
缓存
redis
2020-07-20
3
1127
2020-07-19:给你两千万条数据,你会如何添加到缓存中?
来自专栏
福哥答案2020-07-19: 1.内置map。单条数据量不大时,可以用内置map,一条一条插入2000万数据,耗费至少5秒时间。单条数据量过大,这种方法用不了。2.内存数据库,比如redis。单条数据量不大时,比如一条数据1k,总共20g,单个redis就行。单条数据量大,用分布式。3.布隆过滤器...
缓存
redis
2020-07-20
3
575
2020-06-17:红锁的设计思想?
来自专栏
福哥答案2020-06-17: 一、锁丢失Redis的master节点上拿到了锁;但是这个加锁的key还没有同步到slave节点;master故障,发生故障转移,slave节点升级为master节点;导致锁丢失。 二、持有同一把锁(竞态模型场景)为了避免Redis宕机引起锁服务不可用, 需要为Red...
缓存
redis
2020-07-20
3
512
2020-06-16:Redis hgetall时间复杂度?
来自专栏
福哥答案2020-06-16: 时间复杂度是O(N)。时间复杂度:O(N) where N is the size of the hash.
缓存
redis
2020-07-20
3
1186
2020-06-15:Redis分布式锁怎么解锁?
来自专栏
福哥答案2020-06-15: 答案来自群成员:1.setnx:del2.set:lua+del3.redisson:@Override public void unlock(String lockKey) { RLock lock = redissonClient.getLoc...
缓存
redis
2020-07-20
3
587
2020-06-14:Redis怎么实现分布式锁?
来自专栏
福哥答案2020-06-14: 1.SETNX+EXPIRE。非原子性。2.SET key value [EX seconds] [PX milliseconds] [NX|XX]EX second :设置键的过期时间为second秒PX millisecond :设置键的过期时间为millisec...
缓存
redis
2020-07-20
3
515
2020-06-13:Redis底层数据结构?
来自专栏
福哥答案2020-06-13: 福哥口诀法:简链字跳整 压快压 SDS simple synamic string:简单动态字符串。支持自动动态扩容的字节数组 。list :链表 。双端链表。dict :字典。使用双哈希表实现的, 支持平滑扩容的字典 。zskiplist :跳跃表。附加了后向指针的...
缓存
redis
2020-07-20
3
957
首页
上一页
1
2
下一页
末页