腾讯pcg java后端一面 已经凉了 阿里一面也没消息
回馈牛客。谢谢牛客,
1. 首先自我介绍
2. 问hashmap 源码 注意hash函数 1.7 1.8 不同
3. concurrentHashmap源码
4. volatile为什么能保证变量的可见性,,,,注意: 我说了 编译后在class中存在一个lock前缀指令来实现类似内存屏障的功能,面试官说,能在具体一点吗?
5. synchronized的原理和 锁升级的原理
6. 线程池的原理和 参数,以及 各种线程池的应用场景(我给忘了)。
7. 注意::::重点来了 计网 问了大概有40分钟 把我给整懵逼了。
计网:
1. http的原理?????
2. tcp原理 及其为甚么能保证安全性,,我说了 确认帧和 syn这些标记,,,注意没用,,还需在底层一些
3. 浏览器输入一个域名,,请分析 七层的状态变化,,以及到java进程的过程。 注意还有DNS解析的过程,,,我说了很多 ,,注意DNS在操作系统中是有缓存的,,面试官说没有。。
4. TCP粘包 拆包问题。。。注意::要实现自己的理解,不要背诵面经
5. Http1.0 1.1 2.0 的区别,,以及底层设计,。。。我说了区别,,,但是比如2.0中的多路复用,我不清楚是不是java中NIO的多路复用,所以就没没说。但是,,他问的是底层,,注意:底层
6. 三次握手和四次挥手,,,为什么是三次和四次,,,,我答得挺好,,但是他可能没听明白我的意思,,,不停的问我为什么是四次。。
7. 虽然只有这几个问题,,但是我看了一下表 40分钟有了。
8. 数据库 Innodb的索引结构,,和叶子节点为什么是主索引,,,有啥优点和缺点。
9. exlpain的使用,,注意要看你的业务,,,要有一定的经验。
10. sql的优化,,注意:具体的去练练,,我说了加索引,,,注意:外键,表链接,查询选择字段,索引失效。
11. 4种隔离级别,,注意:说出原理之后,,还要说一些应用。
12. jvm 内存溢出 内存泄漏 我这块不太熟。。但是对于OOM的研究 不错。。注意:重要
13. 内存区域的划分,
14. fullgc的原因 和 措施。 重要
面试总计 一个小时20分钟。 4月13日晚