上一份工作是一家电商公司,由于业务问题,被亚马逊封禁了很多账号,相信业内的小伙伴应该都知道是什么事了,具体不深入讲了。由于公司业务大受打击,我们技术团队也被波及到了,楼主很悲惨的被“优化”了。简而言之,就是我失业了。
于是在深圳7月的炎天暑热中,我开启了满城跑面试的悲惨经历。在此,记录一下自己面试的问题,以供以后的自己和各位读者朋友作参考。
目录
2021/7/2 XX互动(平安银行外包,18K)-一面 25min
2021/7/3 平安XX(保险业务,20K)-一面 48min
2021/7/5 XX云(房地产,18K)-测评 45min
2021/7/5 XX互动(平安银行外包,18K)-二面 20min
2021/7/5 信XX(工银外包,18K)-一面 20min
2021/7/6 XX销客(电商,20K)-一面 40min
2021/7/6 店XX(电商,17K)-一面 40min
2021/7/6 店XX(电商,17K)-二面 50min
2021/7/6 平安XXX(金融,20K)-一面 55min
2021/7/7 realme(商城,20K)-一面 55min
2021/7/8 X票圈(票务,19K)-一面 20min
2021/7/8 X软(华为云外包,18K)-一面 60min2021/7/8 XXX科技(医疗,18K)-一面 60min2021/7/8 XXX科技(医疗,18K)-二面 60min2021/7/8 XX云(房地产,18K)-一面 60min
2021/7/9 XX创和(AI,18K)-一面 20min
2021/7/9 XX聚合(电商,18K)-一面 30min
2021/7/12 平安XXX(金融,20K)-二面 30min
2021/7/12 OPPO(商城,20K)-一面 30min
2021/7/13 XX亚洲(工银外包,18K)-一面 30min
1、介绍项目,数据准确性、灵敏性等
2、最大数据量是多少,大数据时如何处理?
3、如何数据去重
4、微服务的理解,
5、springboot的注解
6、JVM了解吗
7、Linux命令,查看进程
8、SQL优化方式有哪些
9、线程池常用的参数有哪些?常用线程?
10、网络安全xss攻击?
11、线程状态
1、equals和==有何区别
2、如果只重写equals,不重写hashcode会导致什么后果
3、hashmap底层实现原理?简述一下put和get的过程。
4、数据库的优化?为什么不能使用select *
5、数据库的存储引擎?原理是什么
6、事物的特性?
7、数据库并发级别?各会导致什么样的问题出现?
8、数据库的锁机制?了解过间隙锁?
9、BTREE锁和B+TREE锁有什么区别?底层实现原理是什么?
10、查询年龄为35和45的用户名,怎么写SQL?in,or,union
11、查询limit 100000,10,这种如何优化?
12、哪些情况会导致索引失效?索引失效的本质是什么?请结合b+tree索引见到说明
13、explain语句的时候,如何确定优化点所在?
13、MQ作用是什么?
14、mq持久化机制?如何防止消息丢失,重复?顺序执行?重试,死信,分布式事务?
15、drop table、truncate和delete的区别是什么?底层发生了什么会导致这种区别?
1、请简述栈、队列、数组、链表、堆的数据结构
2、ArrayList和linkedlist的区别,ArrayList的扩容机制?
3、synchronized和reentrantlock的区别?
4、hashtable、hashmap和concurrenthashmap区别?
5、cookie和session的区别?
6、简述一下网络七层模型,http和HTTPS的区别?
7、为何使用多线程?单核CPU还有必要使用多线程吗?
8、简述spring中IOC和aop的实现原理及作用?
9、spring循环依赖问题?如何解决?你有其他的解决方案吗?
10、简述Java的内存区域结构和内存模型?
11、volatile关键字和使用场景?
12、线程的生命周期及状态?
13、遇到过OOM问题吗?你是如何定位解决的?
14、SQL优化方案有哪些?如何定位发现并解决?
15、简述mysql索引原理,有哪些索引?什么是覆盖索引,以及索引失效的场景?
1、JVM加载过程?
2、spring bean生命周期?
3、volatile关键字,简要谈一下?
4、简要谈一下hash索引和Btree索引?
5、介绍一下你最近做的一个项目?
6、项目中如何实现权限管理?
7、外部的请求是如何确保安全的?签名验证
8、如果是内部的请求呢,如何拦截?AOP拦截
1、详细的介绍一个你做过的项目?
2、定时功能是如何实现的?
3、不同库之间的数据如何同步?
4、系统很慢很卡,该如何着手处理?
5、离职原因是什么?
1、一个SQL执行的过程中,到底是发生了什么,能解释一下底层吗?
2、事务?
3、事务隔离界别?各会解决什么事务问题?
4、可重复读是什么锁机制?
5、主键索引和非主键索引的区别?请结合数据结构说明?
6、索引依据什么创建?
7、SQL优化?
8、左连接,内连接,右连接的区别?
9、分组查询,排序查询,分页查询?
10、Redis的数据类型有哪些?在Redis中是如何存储的?
11、Redis中发生hash碰撞,是如何解决的?
12、通常情况下哈希碰撞,是如何解决的?
13、Redis中只有单线程和单进程吗?
14、进程和线程的区别是什么?
1、数据库优化?
2、mysql索引?
3、详细介绍一下你的项目?
4、项目数据量多少,并发量多少?
5、前端需要做一个进度条的动态展示,该如何进行?
6、ajax如何实现同步?
7、springmvc如何实现异步?
1、介绍项目
2、项目中你如何来进行表设计?
3、用过索引吗,如何进行SQL优化?
4、高并发情况下,如何解决可能出现的数据不一致问题?
5、服务器CPU爆了,如何排查是那部分的问题?如何解决?
1、介绍项目,并发和数据量如何?
2、你做的什么模块,挑一个细说一下?
3、项目分为多少模块?如何部署的?
4、项目的基础模块是如何引入的?
5、针对项目中模块切割不完全的问题,你觉得应该如何着手解决这个问题?你会设计成什么样的?
6、分库分表?如何查询?
7、输入www.baidu.com打开网页,这个过程中发生了什么?解析- DNS - TCP - HTTP - 返回页面渲染
8、如何优化SQL?连接器-缓存查询-分析器-sql优化-sql执行-db引擎
9、谈谈你对索引的认识,你使用过哪些,有什么需要注意的?
10、存储过程和代码处理,比较一下优缺点?
11、为何现在不提倡使用存储过程呢?
12、平时有学习吗,是如何学习的呢?如何持续提高你的技术水平?你对学习有什么心得体会?
13、项目经理交待给你一个需求,你将如何去着手解决?
14、对操作系统熟悉吗?常用的Linux命令?
1、介绍一下你最近做的一个项目?负责哪些模块?
2、项目中遇到了哪些问题,你是如何解决的?
3、项目中用到过Redis吗?什么场景?
4、Redis的集群模式?
5、Redis获取数据很慢,是什么原因,如何解决?
6、索引什么时候会失效?
7、了解CAP吗?
8、了解GC机制吗?
9、了解CMS吗?
10、两道编程题,一个SQL,一个提取字符串中的数字?
1、SQL数据库索引?
2、数据库引擎?
3、如何建索引?
4、SQL如何优化?
5、又模糊为何会使用索引?联合索引单独使用或倒序使用?
6、spring事务什么时候会失效?为什么?
7、了解tcp请求吗,讲讲建立连接和失去连接时候的几次握手?
1、jdk和JRE?
2、==和equals的区别?
3、Java中集合有哪些接口?hashmap和hashtable继承了什么父类?
4、讲讲hashmap和hashtable和concurrenthashmap之间的区别?
5、具体讲讲hashmap的实现细节?
6、线程和进程的区别?
7、什么是数据安全?
8、如何实现数据安全?
9、synchronized和lock之间的区别?
10、了解线程池吗?
11、spring实现原理?IOC和AOP?
12、AOP如何实现的?以一个你用过的实际场景为例说明?
13、mybatis的一二级缓存?
14、mybatis的三种提交方式?
15、#{}和${}之间的区别?什么时候选择使用?
16、mybatis常用的关键字?
17、springmvc的实现原理?执行过程?
18、springmvc有哪些注解?
19、spring注入方式有哪些?
20、Redis的数据类型?
21、Redis的分布式锁?它和普通锁有何区别?
22、Redis的集群模式?
23、Redis的6中淘汰机制?
24、Redis是单线程吗?为什么要这样设计?
25、Redis中一定就是单线程的吗?
26、SQL的解释主要看那些指标?
27、SQL的索引有哪些?简单比较?
28、SQL的存储引擎?
29、B树索引和B+树索引之间有何区别?
30、SQL如何优化?索引什没情况会失效?
31、了解B+树的数据结构吗?
32、rabbitmq消息丢失?
33、防止重复消费?
34、rabbitmq的使用场景有哪些?
35、rabbitmq的发布模式有哪些?
36、Redis有哪些应用场景?
37、缓存击穿、缓存穿透、缓存雪崩?如何解决呢?
38、Redis的持久化机制?
39、了解设计模式吗?挑一种你最熟悉的聊聊。
40、了解新生代和老生代吗?
41、了解GC吗,有哪些方式?
42、JVM调优有哪些参数?
43、JVM加载过程?
44、事物的特性?
45、SQL中的事务隔离级别?
46、了解悲观锁和乐观锁吗?我们一般如何实现乐观锁?
47、你觉得synchronized是哪一种?它是公平锁吗?
48、谈谈CAP机制?
49、线程的实现方式有哪几种?
50、线程的生命周期谈谈?
51、谈谈你对微服务的理解?
52、微服务分布式就一定好吗?有何缺点呢?
53、springcloud中的组件用过哪些?
54、nacos和eureka的区别?
55、谈谈你对设计数据库的心得,有什么终结性的心得?
1、创建多线程的方式?
2、如何启动一个多线程?
3、线程池了解多少?
4、socket编程了解吗?
5、TCP和UDP分别是什么?有何区别?
1、线程池的核心参数有哪些?
2、线程同步的实际使用场景?
3、springboot的核心注解?
4、springboot的启动过程?
5、springmvc的工作原理?
6、谈谈JVM?
7、GC回收有哪些机制方法?
8、谈谈Java中的集合?
9、hashmap在put的过程中,会判断几次扩容?
10、生产中遇到过哪些内存泄漏或溢出的问题?如何解决的?
1、介绍自己?
2、挑一个你项目中的闪光点说说?或者最能体现出你奇思妙想的点?
3、上家公司团队规模多少?
1、介绍项目?
2、挑一个模块具体说说如何实现的?
3、报表是如何实现的?有用过相关的报表工具吗?
4、Java中的并发包有哪些?
5、用过Redis的那些数据类型?
6、rabbitmq有哪些模式?
7、spring中bean的创建过程?
8、知道数据库优化吗?
9、结合项目中的一个模块,说说你是如何进行表设计的?
10、你们从一个需求到最后落地,大致过程是怎么样的?
1、主线程和子线程之间如何同步?
2、谈谈fork join框架?
3、一个项目的优化,你觉得该从哪些方面入手?你现在回过头去看看以前的项目,你觉得有哪些地方需要优化的?
4、简单比较一下kafka和rabbitmq?
5、谈谈ES?
6、了解数据仓库吗?
7、如何解决Redis和mysql数据不一致的情况?
8、SQL优化你是如何操作的?