美团后端转正实习 一面
面了1h30min,下周二面
- 项目,做了啥,角色是什么,投入生产了吗
- NIO,同步非阻塞,什么是同步,什么是非阻塞
- 链表和Hash表,区别,连续内存离散内存
- Linux用过哪些命令,看过日志吗,tail用法,管道符
|
知道吗,权限命令用过吗,chmod 777什么意思 - final关键字,加类上和加对象上区别 final User类,有id name属性,User a = new User(),可以改a的属性值吗 User类不加final,final User a = new User(),a的属性可以改吗
- Set和List区别 Set为什么是接口(接口可以实现很多个,抽象类只能继承一个) Set可以去重,自己建一个类,怎么去重(重写equals,hashcode,怎么重写hashcode)
- 线程池参数,阻塞队列了解过哪些,拒绝策略哪些,同步队列用过吗 线程池最大线程数量什么时候能用到(阻塞队列满的时候)
- 一次SQL的执行过程
- 存储引擎和SQL server的关系(server可以用很多个引擎,每个表可以指定用什么引擎)
- 读已提交和可重复读的区别(幻读),怎么解决幻读(ReadView,next-key lock)
- 如何结合ReadView实现快照读(trx_id,回滚指针,undo log)
- redo log的作用(面试官说主要用来提升写性能?),Buffer Pool和直接写磁盘的区别
- MySQL索引,联合索引 ,覆盖索引问题
- 表有一亿条数据,删了其中连续的一百万条数据,现在用主键来查所有数据,如何优化查询 用分页,limit [offset] [length],要把上一次分页查到的最大id传入下一次SQL查询,防止内内存满:select * from X where id > [prev_id] limit [offset] [length]
- Kafka如何保证顺序(Producer指定Partition,或者一个Partition)
- 简历提到了动态线程池,问动态修改配置怎么实现的,要重启项目吗 (面试官说他想的是新建一个线程池,替换旧的[摊手])
- 算法:判断相交链表