目录
字节电商提前批一面-凉
总时长一个小时,算法题写了20分钟没写出来。。。
1.为什么要来字节,啥时候能来实习,能实习多长时间?(我明明面试的是提前批啊。。。)
2.挑一个讲项目。
3.这个项目的立项是技术推动的,还是运营推动的?如果是技术推动的,那你会给这个项目设置什么样的指标?怎么让别的部门的人配合你?
4.因为项目里面讲到了索引优化,异步化。所以就是老八股了:
4.1数据库八股:聚簇索引,非聚簇索引,B树和B+树,主键索引和唯一索引,回表。非聚簇索引的叶子节点能不能直接存数据的地址不存主键ID呢?
4.2多线程八股:怎么创建的线程,线程池的参数,你们公司使用的参数是什么?线程池的工作流程。
线程池的饱和策略选择报错策略,那么线程池满了会怎么样?我回答会直接报错,接口报错。
5.项目里面讲到了策略模式,就问我如果我想组合两个策略,应该怎么办?使用什么设计模式?
6.Redis老八股:Redis是单线程的吗?为什么单线程还那么快?持久化,AOF模式文件过大怎么办。分布式锁怎么实现。如果Redis宕机了,分布式锁怎么办?
7.Java老八股:127和128的区别,什么时候用Integer什么时候用int?
8.如果MySQL有一亿条数据,我现在要执行一个SQL语句,会发生多少次磁盘IO?
9.算法题:力扣97交错字符串,判断s3能否由s1和s2两个字符串交叉组成。这道题是个坑,逐个匹配是写不出来的。得用动态规划。
字节朝夕光年提前批一面-过
一面有两个面试官,第二个面试官应该是个领导。总时长50分钟
1.问项目,数据量多大,为啥要用ES,有没有ES调优的经验。
2.redis分布式锁怎么用的。有没有用过别的锁,synchronized锁重吗?用过CAS嘛?我讲了下Java的锁优化。
3.问我项目有没有比较困难的技术点,我就说确实没有很难的技术点,但是业务比较复杂,需要对代码进行一些设计。
4.设计模式,我答了项目利用到的设计模式,但是面试官应该猜到那不是我干的,就问我自己有没有用过什么设计模式,我就说没有了。
5.Java八股文:hashmap,ArrayList,LinkList,构建线程的四种方式,接口/抽象类的区别。Java内存结构,垃圾回收,除了CMS还了解别的吗?我简单说了下G1,但是具体内容不了解。
6.另一个面试官聊别的:你是属于钻研型还是天赋型?最近看了什么知识?看的东西在工作中起到了怎样的作用?以前都是干web的,现在转到游戏开发,有什么想法和未来的打算?
7.没写题