CVTE Web后台开发一面二面面经(校招)
一面(30分钟)3.1
1、自我介绍
2、HashMap
3、HashMap put过程
4、HashMap 为什么1.8用了红黑树,为什么不用其他树,为什么不用完全二叉树(考虑***去变形成本)
5、JVM内存模型
6、了解GC分区吗?
7、简单说下YOUNG GC过程
8、 接第7问 有没有做过这方面的调优
9、多线程怎么保证执行顺序(JDK有没有提供一种帮我们很方便实现的) 我一开始没反应过来,过了一会才想起 CountDownLatch那些
10、如果让你设计一个线程池要考虑什么因素
11、接第10问 使用阻塞队列有什么讲究吗(就是可以随便使用吗)
12、接第11问 那用哪个队列呢?
13、TCP(开放性,熟悉哪个说哪个)
14、接第13问 抓过包看过数据结构吗
15、用过netty吗
16、epoll原理(把select、poll、epoll说一下)
17、RPC框架设计需要考虑的部分(项目有所以才问)
18、你的RPC框架和Dubbo有什么区别吗 相对来说
19、考虑过超时的情况?重试呢?
20、数据库用的Mysql?能简单说下它的索引吗
21、Hash索引为什么不方便排序和范围查找
22、默认用什么索引
23、MQ使用过程有没有遇到什么问题(消息丢失、消息的顺序、消息重复消费)
24、消息重复消费的解决方案
25、接口幂等性了解吗
26、Redis的数据结构
27、平时怎么学Java的
28、看过哪些源码
29、有关注些新技术吗
30、有写博客那些吗
31、反问
二面(20分钟)3.8
1、自我介绍
2、最满意的项目
3、Dubbo架构(因为项目是RPC框架)
4、有在项目里用过Dubbo嘛
5、参考了Dubbo的哪部分流程
6、提供者、消费者怎么通过注册中心来交互?数据怎么发送和接收的
7、为什么要把JDK序列化优化成protosbuf
8、JDK序列化和Json序列化的数据传输量哪个大哪个小
9、什么原因没去实习
10、没去实习在学校主要做什么(学springcloud 给自己挖坑)
11、讲讲Springcloud
12、挑Springcloud最熟悉的组件讲讲
13、socket和netty区别(项目中用到了netty)
14、boss worker和worker的区别
15、Netty三种线程模型的优缺点
16、netty提供的编解码的组件
17、需求:老师布置作业给学生 怎么设计