Java初级程序员面试总结(五)--Redis篇

Java初级程序员面试总结(五)

引言:
我是一个菜鸟程序员,坐标HZ,今天讲讲Redis,谈谈面试常见问题
Q1: 你们怎么用Redis做什么?
Analysis: 表面问Redis作用,实际并不是希望你讲的多NB,而是从一个点切入,深刻认识Redis,展现你的运用能力.
Answer-false: 我在我的项目中使用了Redis做缓存,做计数器,做排行榜,做消息队列,讲XXX怎么用的,为什么这么用(70分)
Answer-true: 我在我的项目做了XX模块用到了你说的Redis,因为业务需求的发展,引入了Redis技术,用来做XX功能,并考虑到持久化,缓存穿透/击穿/雪崩,数据同步,内存淘汰等问题,做了XX优化.(100分)
Q1: 你们XX优化,能详细说说吗?
Analysis: 此时,你的就可以细说解决持久化,缓存穿透/击穿/雪崩,数据同步,内存淘汰等问题的办法了,由浅入深.
Answer: 我们采用RDB+AOF的混合方式进行持久化,RDB作为AOF失败后的数据备份,快速重启,而都开启的话,默认先读AOF文件,因为AOF往往比RDB完整.
Q1: 你们为什么要用Redis做XX,不用XXX做?
Analysis: 此时,你需要比较其他产品的优劣,比如MySQL,Memcached等,从成本,数据结构,持久化,性能方面考虑
Answer: Redis和Memcached优劣,Redis支持8种数据结构,支持数据持久化,支持分布式锁,支持集群,事务.Memcached只支持KV存储,不支持持久化,Memcached是提供CAS的,性能上Memcached更快.
Q1: Redis实现分布式锁的原理?
Analysis: 回答这个问题可以想想Redis的分布式锁的缺点,比如Redis宕机了
Answer: Redis根据hash算法选择一个节点执行setnx加锁,通常设置锁会指定过期时间,然后同步到所有节点上,watch dog会定期查看是否存在锁,如果存在,则下次继续查看.如果期间Redis宕机,会进入死锁.


如果想了解更多Redis信息,我可以出第二篇

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值