当前位置: 首页 > 面试经验 >

快手Java实习一面凉经

优质
小牛编辑
80浏览
2024-01-26

快手Java实习一面凉经

第一次面试,拷打1小时八股

刚过完考试周八股都忘得差不多了

1.List和Map有啥不同

说了一些最基础的然后就扯到了HashMap和ConcurrentHashMap,就说了底层的实现以及1.7、1.8版本前后有啥不同(但面试官只问了我list和map有啥不同,我有点紧张一下子想不起来太多,就往底层我知道的引导了)。

2.项目过程中用list多还是map多,哪些场景

太紧张竟然一下子想不太起来了,就随便扯了扯。

3.Java有哪些锁

只记得synchronized和ReentrantLock,就说了说这两个以及有啥区别

4.synchronized三种锁的状态(忘了)

5.synchronized可以修饰在哪些地方

6.说说CAS的原理

7.集群部署时使用synchronized会不会出问题

synchronized本地锁显然不能用在集群里,得用分布式锁

8.分布式锁有哪些

setnx、Redisson那些东西

9.多线程有没有了解

只用过线程池

10.除了线程池还有什么方法启动线程(不会)

11.那线程池有哪些核心参数

先说了下原理,然后自然带出了参数,同时说了常用的阻塞队列和拒绝策略以及项目里怎么用的

12.JVM内存分区

答得不好,就记得个堆、方法区和虚拟机栈

13.JVM的回收算法有没有了解

说了标记清除、标记复制、标记清理

14.监控JVM用什么命令、怎么调优(不会)

15.知道full gc吗

16.如果JVM发生full gc很多的话可能的原因是什么,怎么排查解决(不会)

17.对象创建的时候是现在新生代然后经历回收之后再去老年代吗

18.如果对象创建的时候大小大于新生代剩余大小怎么办

答了大对象会直接创建在老年代,但是面试官提醒其实是会先对新生代进行minor gc的。

19.MySQL索引数据结构是啥,B+树和B树的区别

20.说说最左匹配原则

21.还有什么索引失效的原因

说了OR、聚合函数、模糊查询的时候使用%xx、建了联合索引时使用了>、<

22.还有什么优化sql的方法

就记得个别用子查询,剩下忘了。面试官引导下想起来个覆盖索引

23.说说回表

24.为了减少回表应该怎么使用sql

用联合索引实现覆盖索引

25.事务的隔离级别

26.MySQL默认什么级别、怎么实现的

27.用transactional注解什么时候会回滚

没太懂啥意思,就说有命令执行出错时会回滚

28.如果异常被try catch了没有抛出会回滚吗(不会)

29.还有什么情况会造成事务注解失效

只记得一个aop失效的场景,类内部方法a调用方法b,方法b注解失效。要想生效必须获得代理类使用代理类调用。

30.除了这个还有吗(不会了)

31. 刚刚说到了动态代理,Java实现动态代理有哪些方式(不会)

32.Spring用了啥设计模式

听错了,听成了问我了解啥设计模式

33.了解过Spring源码

没有,但看过博客(怕说有被拷打)

34.那说说ioc是什么概念

35.什么场景用Redis

缓存、分布式锁、限流

36.数据库缓存一致性怎么解决

说了先写数据库再删缓存、缓存双删、通过监控binlog

37.项目怎么部署的

没部署过,就在idea里跑跑

38.又问到怎么注册服务这些(nacos)

39.各个服务怎么通信的

40.自己测过抢票、秒杀的情况吗,怎么防超卖的

先用生成10w个token,然后用jmeter模拟同时抢票或者秒杀。

12306没怎么测过,怕她继续延伸,所以就自己说了下12306怎么解决超卖的问题,她也没打断我

41.通过RocketMQ延迟消息实现延迟关闭订单怎么做的

就说了延迟消息特性

42.消费的时候比较慢导致超过了十分钟怎么办

雀食可能存在这个问题,那你要问我怎么解决我只能说不会了,于是扯了扯其他的东西

43.除了RocketMQ还有什么方法能做到

简单说了说xxl-job、redis过期监听、RabbitMQ、kafka以及缺点

算法:最长递增子数组长度

面试官人挺好的,每次答完会给反馈,我延伸也不会打断我。答出来80%(jvm调优这种根本没想到实习会问),算法也a了,但面完之后两个工作日挂,后面再投其他的岗位直接简历挂,说好的ks无限复活呢

#快手实习面经#
 类似资料: