面试常问之数据库

一、mysql

索引原理
为什么MySQL的索引要使用B+树而不是其它树形结构?比如B树?
事务的隔离级别以及每种隔离级别解决的问题
mysql中每种隔离级别的实现原理(MVCC+锁)
mysql锁分类以及常见增删改查语句的加锁分析
一条sql语句在mysql中的执行过程
mysql查询优化器对sql的优化过程(基于规则的优化、基于成本的优化)
如何使用explain进行sql优化
数据库死锁排查

以上大部分内容,我自己是通过看下面这个掘金小册学会的。作为后端开发,小册上的内容没必要都看,只需把我上述列的一些重点看了就行。
MySQL 是怎样运行的:从根儿上理解 MySQL

二、redis

redis基础问题

5种基本数据类型(string、list、hash、set、zset)用法及实现原理
高级数据类型(位图、布隆过滤器)
数据持久化方式(AOF、快照)及原理
key的过期策略(定期删除、惰性删除)
redis集群模式(主从同步、哨兵模式、redis cluster)
Redis内存淘汰机制(lru)

redis疑难问题

缓存与数据库双写不一致
缓存雪崩(缓存机器全部出现宕机)
缓存穿透(恶意请求,访问不存在的数据,无法命中缓存)
缓存击穿(某个热点key突然失效)
缓存并发竞争(多客户端同时并发写一个 key)

以上问题我大部分是通过看Redis 深度历险:核心原理与应用实践这本书学习的,还有部分可以看advanced-java中与缓存相关的部分。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值