深圳开思时代科技有限公司社招Java工程师(三面)
1. 谈谈你对JVM的了解?------
2. JVM内存区域?--------上一个问题的延续,画个图一块一块地阐述下即可。
3. 垃圾收集算法?--------标记清除算法,见名思义标记所需要回收的对象后,统一回收,但是会产生不连续的内存碎片。
4. 你了解哪些垃圾收集器?------G1收集器,JKD7升级的并行并发,分代收集,可预测停顿……
5. 创建线程的方式?-----------
6. 怎么保证多线程的运行安全性?--------互斥性,可见性,有序性……
7. 关于多线程锁的升级原理?--------
8. HTTPS原理,以及安全的概念是怎样理解的?----------
9. MySQL数据库的事务以及事务的特性?-------------
10. MySQL的隔离级别?------
11. 谈谈你对SpringBoot的了解?---------
12. SpringBoot是如何工作的?--------
13. 聊项目,特别其中的项目架构设计模式?--------
14. 聊了很久多线程的东西:Disruptor框架的用法,实现(这个是项目中用到的);线程池的用法,传参,线程池的类型,线程数怎么确定的;Future的异步调用过程是咋样的?
15. Future超时的情况?无限递归会造成jvm内存的什么问题?
16. kafka(项目用到)的东西:kafka如何保证可靠性,kafka的主从机制描述下,ISR解释下,消费者的配置情况。
17. synchronized的底层实现?如果两个代码块锁不同的实例,两个代码块的访问会互斥吗?(这个地方其实是想问申请的锁是对象锁,是两个不同的资源)
总结:数据库和底层JVM,以及项目的一些经验为主,其他的问题感觉相当没有意义……
全部评论
(1) 回帖