秋招面经-小米-软件开发工程师-java方向

1、自我介绍

2、项目 1 拷打

3、实习拷打

4、WebSocket 在 Spring 框架中涉及到的一些类或者注解有哪些?

5、你认为使用 WebSocket 进行客户端与服务端的通信时,需要在业务侧写代码来做消息的确认吗?

6、一个微服务系统会涉及到哪些组件?项目中用到了哪些?

7、项目中 ES 的叶子查询是如何实现的?

8、MySQL 中有哪些存储引擎?InnoDB 和 MyISAM 的区别?

9、为什么 InnoDB 选择 B+ 树作为索引?

10、数据库的第三范式?数据库的设计为什么要遵循三范式?

11、Spring 中处理一个请求,会经过 Spring 的哪些模块去处理?

12、Spring 中的类在它启动之后,会执行哪些方法或者用到哪些注解?

13、静态代码块和构造方法,哪个先执行?

14、构造方法和 Autowried 哪个先执行?

15、了解过 @PostContrust 注解吗?这个注解和实现 InitializingBean 接口重写它的 init 方法,哪个先执行?

16、Java 中 HashMap 和 ConcurrentHashMap 有什么区别?

17、什么是一致性哈希?和正常的哈希有什么区别?

18、用过哪些设计模式?

19、线程的创建方式有哪些?

20、实现 Runable 接口创建线程和实现 Callable 接口创建线程有什么区别?哪一种接口可以拿到执行的结果?

21、一般线程池通过什么方式来创建?线程池有哪些核心参数?

22、谈谈线程池工作的流程

23、核心线程是一开始就创建了还是任务来了才创建?

24、假设一个场景,分别部署了 A 和 B 两个服务,A 服务需要调用 B服务,B 服务的执行时间比较长。B 服务执行完毕后,需要把结果返回给 A 服务,请你设计解决方法,如何让 A 和 B进行一个交互?(三种方案)

25、假如你有两个很大的集合,每个集合本身的数据是不重复的,但是两个集合之间的数据是存在重复的。集合很大,加载到内存中会出现问题,请你从数据结构和算法的角度来考虑,怎么样去找到两个大集合的重复元素?

26、假如在实际生产中,有一个接口的请求响应时间比较慢,如何去排查?

27、手撕:力扣 20.有效的括号;(2)手写单例模式

全部评论

相关推荐

评论
3
5
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务