自我介绍
1.SQL深分页问题是什么?如何解决?(弃用offset,使用游标从上一次查询结束处继续查)
2.什么情况下会导致索引失效?(不满足最左匹配原则,表达式计算,字符串转换,左模糊匹配,范围查询,or后非索引列)
3.如何选择加索引的字段(区分度/频率/字段长度)
4.如果表比较大,有什么分表策略?(垂直/水平)
5.MySQL支持表的数量级是?为什么最好是这个范围?(依数据而定,百万~千万级。3层簇聚索引最好能够容纳)
6.项目中有没有自己设计存储结构的经历。
7.ACID是什么怎么保证。
8.三个log分别有什么用
9.MySQL主从复制的过程
10.什么时候需要加缓存?(指缓存层,高并发情况下)
11.缓存三兄弟的原因,解决方式。(穿透存null,击穿逻过期/布隆,随机化ttl)
12.Redis为什么比MySQL快(内存/单线程/多路复用)
13.Redis有什么数据结构上的优化你了解(listpack紧凑存储/安全string/hashmap/skiplist结构)
14.RedisMySQL一致性怎么保证(读旁路缓存,写先更MySQL后删Redis/延迟双删/消息队列+Binlog)
15.synchronized和reentrantlock的区别
16.synchronzied锁升级过程
17.类加载过程,对象生命周期(加载链接初始化)
18.bean的生命周期(实例化/属性注入/set各种aware/初始化前后处理/初始化/初始化后后处理/使用/销毁)
19.项目中比较困难的地方,如何解决的。
20.需求从提出到落地的流程。
21.如何看待ai的。
手撕:局部反转链表。命中缓存了2分钟直接写完
全部评论
(3) 回帖