点击上方头像关注我,每周上午 09:00准时推送,每月不定期赠送技术书籍,小窗口回复“资源”、“测试工具包”领取测试资源。
本文3440字,阅读约需7分钟
一
Java并发
(面试题)
Synchronized 相关问题:
1. Synchronized 用过吗,其原理是什么?
2. 获取对象的锁,这个“锁”到底是什么?如何确定对象的锁?
3. 乐观锁一定就是好的吗?
可重入锁 ReentrantLock 及其他显式锁相关问题:
1. 除了 ReetrantLock,你还接触过 JUC 中的哪些并发工具?
2. CyclicBarrier 和 CountDownLatch 看起来很相似,请对比下呢?
Java 线程池相关问题:
1. Java 中的线程池是如何实现的?
2. 如何在 Java 线程池中提交线程?
Java 内存模型相关问题:
1. 请对比下 volatile 对比 Synchronized 的异同。
2. 请谈谈 ThreadLocal 是怎么解决并发安全的?
3. 很多人都说要慎用 ThreadLocal,谈谈你的理解,使用 ThreadLocal 需要注意些什么?
4. 你在多线程环境中遇到的常见的问题是什么?你是怎么解决它的?
二
JVM和性能优化
(面试题)
1. 什么情况下会发生栈内存溢出?
2. JVM的内存结构,Eden和Survivor比例?
3. JVM内存为什么要分成新生代,老年代,持久代。新生代中为什么要分为Eden和Survivor?
4. JVM中一次完整的GC流程是怎样的,对象如何晋升到老年代,说说你知道的几种主要的JVM参数?
5. 你知道哪几种垃圾收集器,各自的优缺点,重点讲下cms和G1,包括原理,流程,优缺点?
6. 垃圾回收算法的实现原理?
7. 当出现内存溢出,你怎么排错?
三
Spring
八
Git
(面试题)
1.在 Git 中提交的命令是什么?
2.什么是 Git 中的“裸存储库”?
3.如何在Git中创建存储库?
4.怎样将 N 次提交压缩成一次提交?
5.什么是 Git 复刻(fork)?、
6.分支(branch)和克隆(clone)之间有什么区别?
7.“拉取请求(pull request)”和“分支(branch)”之间有什么区别?
8.如何Git 恢复先前的提交?
九
性能优化
(面试题)
1.双11高并发大促场景下,为什么只能够下订单, 而不能够退款?(服务降级等)
2.支付宝系统可以从哪些角度优化提升性能?(缓存、异步、分布式等)
3.天猫上亿商品数据如何完成快速统计?(Fork/Join任务拆分等)
4.支付宝转账提现功能应该如何优化?(一致性、高吞吐方案等)
5.淘宝网络抖动,如何避免用户重复下订单?
如果想要获取以上xmind版思维导图,可以在ITester软件测试小栈微信公众号后台回复“Java复盘”领取(含百度网盘链接、阿里云盘链接)。
更多系列文章
敬请期待
ITester软件测试小栈(ID:ITestingA),专注于软件测试技术和宝藏干货分享,每周准时更新原创技术文章,每月不定期赠送技术书籍,愿我们在更高处相逢。喜欢记得星标我,每周及时获得最新推送,第三方转载请注明出处。
想获取更多最新干货内容
快来星标 置顶 关注我

