1.在项目中缓存是如何使用的?缓存如果使用不当会造成什么后果?

1.1 项目中缓存是如何使用的?
项目场景:
1.2为啥在项目里要用缓存呢?
用缓存,主要两个用途,高性能和高并发
(1)高性能


(2)高并发



1.3 用了缓存之后会有什么不良后果?

2.redis和memcached有什么区别?redis的线程模型是什么?为什么单线程的redis比多线程的memcached效率要高得多(为什么redis是单线程得但是还可以支撑高并发)?

2.1 .redis和memcached


2.2 redis的线程模型(工作原理)
(1)描述




(2)原理图解


2.3为什么redis单线程模型也能效率那么高?

3.redis都有哪些数据类型?分别在哪些场景下使用比较合适?
string,list,hash,set,zset



4.redis的过期策略能介绍下?内存淘汰机制都有哪些?要不你再手写一个LRU?

4.1 设置过期时间


4.2 内存淘汰


4.3 手写一个LRU

5.如何保证redis的高并发和高可用?reids的主从复制原理能介绍下么?redis哨兵原理能介绍下么?

主从复制:https://blog.youkuaiyun.com/java_shm/article/details/108186536
- 建立连接阶段(即准备阶段)
- 数据同步阶段
- 命令传播阶段
哨兵原理:https://blog.youkuaiyun.com/java_shm/article/details/108191805
- 监控
- 通知
- 故障转移
6.怎么保证redis挂掉后再重启数据可以进行恢复?

RDB与AOF
7.你能聊聊redis cluster集群模式的原理吗?

redis cluster集群:https://blog.youkuaiyun.com/java_shm/article/details/108211648
8.你能说说我们一般如何应对缓存雪崩以及穿透问题吗?

缓存雪崩现象


如何解决缓存雪崩


缓存穿透现象及解决方案

9.如何保证缓存与数据库双写时的数据一致性?


10.你能说说redis的并发竞争问题该如何解决吗?

解决方案:


11.你们公司生产环境中的redis是怎么部署的?


12.分布式缓存相关问题面试回答技巧?

申明:内容来自网络,仅供学习使用
参考:https://www.bilibili.com/video/BV1FE411y79Y
本文深入探讨了缓存技术在项目中的应用及其对高性能和高并发的影响,详细对比了Redis与Memcached的区别,解析了Redis的单线程模型如何支撑高并发,介绍了Redis的数据类型及应用场景,阐述了过期策略与内存淘汰机制,并讨论了如何保障Redis的高可用性和数据一致性。

1707

被折叠的 条评论
为什么被折叠?



