一面
1.SQL索引优化有哪些?
- 最左前缀
- 联合索引
- 索引下推优化
2.InnoDB数据页大小,一页可以放多少数据?
16k
bigint类型可以放千万级别
3.varchar类型建索引,可以设置的最大长度是多少?
768
4.B-树和B+树的区别?为什么InnoDB索引使用B+树?
是否只在叶子结点存储数据
B+树优化磁盘IO和范围查询
5.项目中流程配置是什么样的?
6.分布式锁使用什么?为什么用lua脚本?为什么setnx不用lua?setnx从什么版本支持原子操作的?
setnx + lua
解锁操作不是一个原子指令,涉及到get、equals、del
setnx在2.6.12版本之后,官方支持原子操作,可以set key value nx ex
7.zookeeper分布式锁是如何实现的?
创建一个临时有序节点,并监听上一个节点的状态
8.线程池中,线程数到达最大线程数怎么办?
配置拒绝策略