腾讯音乐 后端暑期实习 一面凉经
jvm:
jvm 内存模型,分为哪几个部分
了解哪些垃圾收集器:CMS G1
CMS负责的部分?老年代
CMS特点? 答了CMS回收流程 特点低停顿
Springboot等框架:
- 如何理解IoC容器和AOP
- Springboot启动后马上想要完成某样操作如何做
- Mybatis表关联查询操作:答了sql join+resultMap标签、子查询
- 是否了解Dubbo、其他rpc原理
- Dubbo是如何使用的(具体细节,如服务提供端如何配置,服务调用端如何调用)
- 是否了解Redis:只知道有什么数据结构
- 是否了解消息队列,听说过哪些消息队列:没具体了解;RabbitMQ,kafka
- Springboot bean生命周期(不会)
- Spring中Bean循环依赖如何解决的(不会)
Linux指令
- 有没有在Linux系统下部署过项目:无
- 查看内存占用(不会)
- 运行的应用和端口号(不会)
容器:
- 想使用线性表,有哪些实现:ArrayList、LinkedList,答了使用场景
- 上述容器是否线程安全:否
- 不安全,那是否了解线程安全的线性容器:只答了Vector(没学juc),但现在不推荐使用了
- 为什么不推荐使用Vector:答了基本每个方法都加了synchronize锁,性能差
Java多线程:
- 如何理解线程安全
- 有没有遇到过需要考虑线程安全的场景:答了携带token查询信息时保存用户信息可以使用static ThreadLocal user来保证线程安全
- ArrayList和LinkedList是线程安全的吗:不是
- 如果在方法内部新建ArrayList,再调用它的方法,这种使用方式是线程安全的吗:是
- 有没有用过Java多线程:Socket编程作业UDP任务使用过,主线程为UI线程,新建一个线程用于阻塞式io接收信息
- 创建线程方法
- 除了synchronize还了解什么锁:答了ReentrantLock
- synchronize和ReentrantLock区别
- synchronize和ReentrantLock性能对比
- ReentrantLock的底层实现
- 是否了解线程池:还没看
MySQL:
- 主键索引和非主键索引区别
- 描述B+树
- 使用B+树的原因:范围查询、(每个节点为页)矮胖,避免过多磁盘IO
- 是否了解MySQL的主从复制(不了解)
反问:现在应该去学习什么
答:上面问的这些企业中都有使用,可以针对学习
#腾讯音乐春招##内推##春招##实习##面经##腾讯#