26年1月底裸辞,现在在一边改简历一边总结面试经验,因之前做多了金融相关的业务系统,对于技术本身忽视较多,所以现在技术栈与外界有些脱节,故此将自己面试中遇到的问题在这里进行汇总。
索引失效的场景
1、联合索引违反了最左匹配原则,例如id+name+time,但是直接就是where time
2、对索引使用函数或者表达式,例upper(name)或者id-1=9
3、类型转换问题,例varchar类型的str=1
4、模糊匹配以通配符开头
5、or连接条件且一侧无索引
6、使用!=或者<>或not in
7、使用is not null(对允许为空的索引列使用)
8、范围查询后的列失效,联合索引中某一列使用了范围查询><between
kafka消息阻塞怎么办
spring依赖循环怎么处理
查问题的思路
千万级别的存储过程怎么进行效能管理
讲一下java里的锁
事务怎么实现数据一致性
linux查问题的指令(线程)
亿级别的数据库查询怎么做
redis有哪些数据类型
cpu使用率过高怎么办,怎么排查的
springcloud了解多少(这点是没有在企业级应用实践过的,所以只是基于自身对微服务治理的了解作答,感觉现在传统java出来不会这块技术栈真的很吃亏)
讲一下线程,怎么创建线程池的(估计是想要了解具体方法,这里没答上来)
你开发过程中遇到的最难做,你印象最深刻的技术问题说一下,尽量细节,要从遇到问题到解决思路一一说明