归纳一下近期面试,没有回答好的几个问题。多次面试的总体反馈,非单次。 Jacky哥觉得有意思或者有价值的才会详细更新,大路货的题目就不打字了,哪里都能搜到。
1.reids有哪几种主要的数据类型,请列举他们的使用场景?
2.高可用方案有哪些?能举例吗?
3.redis分布式算法有哪几种?能说说吗?
4.如何利用redis解决商品超卖问题?
答:
两步走 1.使用Redis,我们可以存储每个商品的库存数,并使用INCRBY命令更新库存数。当用户提交订单时,如果库存数量足够,则执行库存数减1的操作,并返回订单提交成功;否则返回库存不足的提示。 2.在高并发的情况下,有可能会出现多个用户同时请求服务端,从而给服务器带来很大的压力。为了避免这种情况的发生,我们可以使用Redis实现缓存优化,减轻服务器压力。
可以使用Redis的缓存机制,将请求的结果存储到缓存中,下一次请求时直接从缓存中获取数据,从而避免再次向服务器发起请求。
5. redis的zset实现原理?
6. redis的hash扩容有了解吗,hash装载因子是多少?
7. list底层哪三种数据结构实现的?分别解决了什么问题?
8. redis的set底层什么时候是hash,什么时候是跳表?
9. 跳跃链表实现介绍下,设计思想?
10. rdb和aof区别?
11. redis过期时间如何设置,redis如何实现token续期?
12. redis的缓存淘汰算法有哪些?
lru lfu