0.如果try 和 finally 代码中都写了return语句, 最后返回的是哪个?为什么
1.spring声明式事务失效的场景
2.spring事务传播机制有哪几种
3.要想主方法不受子方法的异常而回滚, 该怎么处理
4.MySQL索引数据结构
5.索引失效的场景
6.最左匹配,回表,覆盖索引的概念
7.线程池new ThreadPoolExecutor() 构造函数是哪几个参数? 以及 设置经验?
8.线程池默认的工作行为是怎样的
9.有没有办法优先开启更多的线程,而把队列当成一个后备方案呢?
10.如果不小心每次都创建了一个自定义的线程池(10 核心线程,50 最大线程,1 秒回收的),反复执行测试接口线程,最终可以被回收吗?会出现 OOM 问题吗?
11.讲一下项目里经常使用的设计模式(装饰器模式和代理模式的区别?)(举几个体现了开闭原则思想的设计模式?)(spring中遵循了哪些设计原则?)
12.单例模式有哪些写法? 经典的双检锁的写法为什么要加volatile关键字
13.搞定代码重复的方法有哪些
14.jvm内存模型
15.jvm垃圾回收 (对象在什么时候可以被回收, 回收算法类型有哪几种, 垃圾收集器有哪几种, 分代垃圾回收的过程)
16.java进程导致的cpu负载持续很高的排查思路, 有没有直接在Linux环境上直接观察过jvm垃圾回收的情况, 如果观察到老年代一直无法回收下来, 怎么进一步定位是什么业务造成的?
17.请求响应很慢的优化思路
18.平时喜欢看哪些技术书
19.除了java对其他语言有兴趣吗
20.如果学过其他语言, 能讲下学习一门新语言的心得方法吗
21.举一个工作中遇到过的挑战, 最后怎么解决的
22.如果要把一个单体应用扩展为集群的方式部署,有哪些地方需要注意(简单的tomcat应用, 这个应用包含了登录认证模块, 码表模块[本地内存实现], 文件上传下载模块, xxx资料库模块, 数据库用的mysql)
Linux相关
1.shell命令对空格敏感吗?
2.我们定义一个字符串常量时,如果含有空格,该怎么办, '' 和"" 有什么区别
3.ssh远程连接一个主机时,连接成功了,但返回的登录信息中含有'xxx command not found', 可能是什么原因?
4.怎么查看本机的mysql服务正被哪些客户端连接访问?
5.管道符后面怎样才能接一个非管道命令?
如果写了熟悉redis :
redis为什么快(单线程 IO多路复用 操作内存等)
redis持久化机制
redis事务怎么用的
redis中有几种数据结构
redis的淘汰策略
redis中的数据持久化和内存回收(过期key删除,数据淘汰)是在主线程中进行的吗
redis性能问题排查思路
其他:
hashMap底层结构
threadLocal用过吗?内存泄露的场景
mysql的sql执行过程
幻读是什么, mysql怎么实现幻读的
mysql是怎么保证数据不丢失的?
分布式事务的几种实现方式
网友评论