项目通用问题
即使是从 1000+ 篇面经中,关于项目的问题也没多少,很多人在记录的时候,都是直接用项目两个字代替过去,很少记录细节,只有一部分人记录的细节,然后我也看到了很多通用问题,所以我也给记录下来了。
总的来说就是,有些知识 99% 是基于项目来提问,并且问的这些知识还是通用的,也就是说,你的项目也极可能被问到这些,所以大家可以看看。
并且在统计的时候,我分成了两种,一种是基于 MQ/Redis 等中间件来提问的,一种是基本每个项目都会存在的基础知识,另外就是,这里我就不严格区分他们的出现频率了,主要数据不那么多,其实不大好区分。
另外就是之前写过一篇如何梳理项目的文章:做项目时需要考虑的几个点
基础通用问题
1、介绍下项目?
2、项目中最大的难点?
3、有多少张表?有哪些表?
4、有哪些服务?
5、项目中token如何使用的
6、你会在token中存在用户的一些基本信息吗,如何存。
7、我说大部分数据还是存在session中,HR顺者问你会去清理session的数据吗?如何做的
8、session和cookie区别,解决了协议的什么问题?
9、Java项目打包成jar包和war包的区别,什么情况打成jar,什么情况打成war
10、你项目的登录功能,输入用户名和密码,用户提交登录请求到服务端,说说处理请求的详细过程,包括网络层面的。(tcp建立连接、断开连接的过程+业务处理请求的过程)
11、自己在项目实现了哪些
12、项目体量有多大(不是很懂怎么衡量项目体量,于是说了实体类有多少个,有多少张表)
13、知道哪些测试工具?
14、平时写代码是如何进行测试的?
基于中间件的通用问题
1、kafka用来干什么?
2、Kafka怎么保证消息可靠传输?
3、Kafka的结构,选举简单说下
4、kafka 如何保证消费者不会重复消费数据
5、offset自动提交还是消费完之后才提交offset
6、kafka有没有什么确认机制保证消息一定写入kafka集群当中
7、kafka最大处理数据能力 为什么能做到
8、mq的作用(异步、削峰、解耦)
9、kafka副本了解吗,讲一下
10、为什么不让一个partition被同组的多个consumer消费
11、为什么用 redis 用来保存验证码
12、保证幂等性的方案
13、幂等性怎么保证?
14、分布式锁怎么实现?