网站Logo 时光杂货铺

武汉156期面试题

admin
625
2025-08-26

4.10

1. 你覺得您的項目中對你來說,哪個項目對你來說是最有成長性的,體現在哪些方面?
2. 非關係型數據庫在哪個產品下運用的?
3. redis緩存如何和mysql數據庫保持一致?
4. SpringMVC,SpringBoot, SpringCloud的區別?
5. 使用Feign,如何添加一個請求頭?如果是多線程異步調用呢?
6. 說一下對SpringAOP的理解?
7. AOP日誌記錄如何實現?

1.你在这个项目过程中有哪些困难,你是怎么解决的?
2.数据库MySQL的索引有什么了解?
3.如何选取这些组合索引的字段?
4.索引失效的场景的?
5.查询满sql如何优化?
6.项目中是否会进行分库分表?
7.删表的三个命令有什么区别?
8.MySQL的存储过程? procedure    function
9.使用redis的优势?
10.redis持久化?
11.如果MySQL有5千万的数据,redis只有10万,
12.淘汰策略有哪些?
13.redis事务,四个命令
14.redis异常    缓存穿透  击穿   雪崩
15.redis实现延迟队列
16.kafka   和rabbitmq
17.kafka的消息丢失,幂等性,回调丢失
18.springboot和springcloud的区别
19.负载均衡的意义
20.前端有了解过吗?前端的基本指令。

1.说说集合容器。
2.讲讲垃圾回收机制和垃圾回收算法。
3.xml方式指定bean,spring的bean创建流程。
4.线程池的七个核心参数。
5.线程池的创建方式。
6.说说对同步锁的理解。
7.mysql的sql优化怎么做的,从头到尾的流程是怎样的?
8.sql优化中最让你印象深刻的优化方案。
9.现在有很多数据,关联到了多张表,如何批量导入?
10.多张表的同一字段怎么做到同步?(这个问题的起因是我提到了冗余字段

4.11

1.上家公司什么时间离职,离职原因?
2.上家公司主要做什么类型的项目?
3.说一下你做的项目难点功能及解决方案
4.订单超卖解决方案?   redis锁? 
5.HashMap和HashTable有了解过吗?
6.HashMap的实现原理?
7.HashMap key的值是怎么计算的?
8.你对RabbitMQ有多少了解?
9.RabbitMQ消息的重复消费问题如何解决的 ?
10.你对我们公司有了解吗?
11.目前期望薪资?

Mysql 调优
Mysql索引失效
常用索引
索引的优缺点
Mysql的锁 
事务的隔离级别有哪些
线程池创建有哪些
wait 和 sleep 方法有什么区别
介绍一下JVM
项目中有用到什么牛逼一点的技术吗
介绍一些SpringCloud
介绍一下分布式事务
为什么从上一家公司离职
三年后打算

1.日活多少,数据量多少   
2.kafka的应用场景
3.kafka stream怎么用的,功能怎么实现的
4.redis在项目中的使用场景
5.用户行为数据在redis中要存多久,有没有做持久化存储
6.抽象类和接口的区别,抽象类可以有main方法吗,可以有其他方法吗
7.hashmap的实现原理
8.口述简单的sql语句场景,where和having区别,性能上有什么优势
9.join和子查询哪个更好
10.事务的传播行为
11.注解是用来干嘛的

1.说一下Spring中IOC和AOP的理解?
2.说一下SQL优化的解决方案?
3.项目中mq的消息丢失怎么处理的?
4.你也写过一些前端代码对吗?
5.说一下httpclient
6.说一下Collection的整体结构
7.讲一下SpringCloud的网关
8.有用网关处理一些安全问题吗?
9.讲一下过滤器和拦截器的区别
10.ES能做关联查询吗?写法知道吗?
11.Docker的常用命令
12.热点推荐怎么做的?
13.项目怎么部署的?除了自动部署,有手动操作过吗?
14.Linux的常用命令?查看磁盘空间用什么命令?查看进程用什么命令?过滤用什么命令?
15.项目上线后有多少用户?每天日活有多少?并发量有多少?有多少服务器?

1.自我介绍
2.你使用的是哪种设计模式?在哪种场景?
3.加锁的方式
4.synchronized 和 Lock 有什么区别
5.synchronized 和 Lock哪个用的多一些
6.lock锁的实现
7.线程池的使用场景,你们项目中七大参数是怎么配置的
8.线程池的拒绝策略
9.sentinel限流核心算法
10.Ribbon和spring是怎么实现
11.spring核心源码你理解多少
12.springboot启动 讲一下
13.spring 和AOP是怎么结合的
14.mybatis怎么和spring进行结合
15.项目中的微服务事务用的
16.seta的工作模式原理 
17.mysql的索引有哪些
18.主键索引和普通索引区别
19.索引优化
18.一张表索引最多有多少个,你项目中一般用多少个
21.索引优化策略,查询比较慢怎么办
22.讲一下redis,一般用的数据结构,根据你使用的redis数据类型,解释一下为什么用,跟业务场景匹配一下
23.你zset使用多少内存,存多少数据
24.说一下缓存击穿,怎么解决

1.讲一下你在项目中遇到的困难 ?
2.使用redis做一个排行榜怎么做?
3.kafka你在项目中是怎么用的 ?幂等性怎么解决?
4.kafka消息丢失,你是怎么知道的?怎么解决?
5.项目中权限是怎么做的?
6.ThreadLocal底层原理?
7.用过多线程嘛?有哪几个状态?
8.假设有三个线程t1,t2,t3怎么让它排序输出?
9.软件现在有地址可以访问嘛?现在能搜到嘛?
10.限流用到的什么方式?
11.令牌桶是个什么原理可以说一下嘛?
12.你部署过项目吗?

1.你在做项目的过程中遇到过哪些问题,或者有什么技术亮点可以聊一下呢
2.你怎么理解springcloud,springboot
3.单体项目你在什么时候会考虑会升级成为什么微服务项目
4.spring bean的配置方式
5.springboot自动装配
6.你们怎么使用AOP
7.springmva请求流程
8.了解过或用过哪些设计模式
9.${},#{}区别
10.Redis常用数据类型
11.你们在使用数据库的时候怎么去建立索引
12.JAVA实现多线程的方式有哪些,有什么区别
13.SQL中UNION 和 UNION ALL区别
14.帮我写一个sql,有一张表字段包括,学生姓名科目分数,我现在要每个学生平均成绩
14.你是通过什么方式去调用阿里的接口的 http协议
15.调用的时候有验签和封签的过程吗 
16.你说的登录鉴权框架是怎么去实现的

1.现在我有一个final修饰的数组,数组里的元素我可以修改吗?
2.i++会有线程安全问题,有什么办法解决?
3.Atomic原子类底层怎么实现的了解过吗?(上个问题我回答的原子类,所以接着就问这个问题了)
4.synchronized锁普通方法和静态方法时,锁对象分别是什么?
5.线程池怎么创建的?
6.你们用的哪种拒绝策略?
7.JVM垃圾回收机制和算法对你的项目问题排查有什么帮助吗?
8.除了加索引以外,数据库SQL优化还可以怎么做?
9.如果不用分布式锁框架,自己实现分布式锁要注意什么问题?
10.用Redisson的时候需要注意哪些问题?
11.缓存雪崩除了会影响到mysql,redis本身也会变慢,这一块有了解过吗?
12.Docker在哪些地方用到的?
13.你们项目有上传镜像吗?docker file怎么写的有了解吗?

1.你知道的设计模式有哪些,大概是怎么实现的
2.比较熟悉的排序算法说几个,实现思想
3.在多线程的环境下怎么使用ArrayList
4.接上一个问题, 如果不使用copyOnRightArrayList呢
5.List和set的区别
6.说下集合体系
7.内存回收机制有哪几种, 大概是怎么实现的
8.spring的核心思想
9.SpringMVC的处理流程
10.spring bean的生命周期
11.springboot的优缺点
12.依赖冲突怎么解决
13.starter的实现机制
14.springboot的核心注解
15.springboot和springcloud的区别
16.eureka用过吗, 讲一下
17.nacos和eureka的区别
18.使用mybatis或者mybatisplus有什么好处
19.原来本来存在的一个系统, 现在要对底层做一个安全校验, 如果要在mybatis层实现, 你能说下你的思路吗
20.mysql里面有几种数据引擎
21.行锁和表锁有啥区别
22.数据库建索引的原则,说说你们平时建索引都遵循哪些原则
23.索引失效场景
24.现在要设计一个分布式系统,你要考虑哪些点,如果要你来设计
25.容器化部署知道吗
26.讲讲docker是个什么东西
27.为什么docker能实现资源隔离

1.设计模式了解过吗
2.多线程环境下如何使用 ArrayList
3.链表了解过吗?
4.常用集合体系有哪些
5.jvm有哪些垃圾回收器?
6.spring的核心思想
7.Spring中AOP的实现原理
8.springmvc实现原理
9.springBEAN的生命周期
10.SpringBoot的常用注解
11.Hibernate了解过吗
12.springcloud常用组件
13.mysql存储引擎
14. 索引是越多越好?
15.索引失效场景

4.12

1,你们项目中用了哪些设计模式,用在哪?
2.谈谈对spring框架的理解
3.项目当中怎么用AOP的
4.redis常用命令 
5.常用的linux常用命令
6.前端了解过吗
7.js有哪些基本数据类型
8.js怎么创建对象
9.vue用过吗
10.你有什么想问我的问题吗

1.你在工作当中接触到哪些通信协议?
2.关于http请求,他的完整请求包含哪几部分
3.除了报文内容传输,他的请求头主要包含那些信息
4.有了解过tcp协议吗
5.tcp协议分类的话,能分成几类
6.知道单工,双工概念是什么意思吗
7.你们使用的数据库是什么,数据量是多少
8.项目上线了吗,可以搜到吗
9.使用mysql当中有使用索引吗
10.选用的索引类型有哪些
11.主键索引,唯一索引的区别
12.mysql中分页的关键字,有什么参数
13.现在我想做查询,然后需要做分组,分组后条件,排序,执行顺序是什么样的
14.使用什么关键字可以查看sql执行过程
15.什么时候会发生索引失效
16.工作当中有遇到多线程场景吗
17.在使用线程池,使用的什么类型的线程池,参数怎么设定的,设置数值的依据
18.一个线程的完整生命周期
19.run()跟start()的区别
20.线程创建的几种方式
21.参与过项目的部署上线吗
22.linux查询进程命令,从日志文件过滤一个关键字 cat xxx.log   | grep  error
23.项目当中使用那些集合
24.arrayslist底层怎么实现
25.hashmap底层原理
26.上家公司离职原因
27.入职离职时间

1.介绍一下你的项目流程
2.说一下项目中的重难点
3.项目中的下单功能实现
4.订单功能的数据库表有那些
5.项目中redis中存储那些数据
6.IO流有了解过么?
7.ES中一般搜索的什么数据  ()
8.rabbitMQ的几种模式
9.redis和MySQL的区别
10.mybatis和mybatisplus的区别

1.目前人在哪
2.为什么来江苏找工作
3.离职原因
4.自我介绍
5.做过哪些项目?项目经验?技术栈?
6.哪个项目映像深刻?
7.你知道定时任务的中间件   xxl-job 
8.定时任务怎么确保持续72小时运行
9.有三个线程 第二个断开 第三个会不会有问题
10.发布任务有没有迭代?
11.有没有做过电商平台的对接经验?
12.个人最大的优点?
13.redis的默认端口
14.redis给一个变量赋值
15.有什么想问我的
1.定时任务中间件?怎么确保定时任务持续72小时运行

1.说说java数据结构
2.说说你们项目中哪些地方用了哪些数据结构,具体点
3.线程安全的map集合允许有空值吗,说说行或者不行的原因,其下他哪些map类型可以有空值,哪些不能有空值,你们业务哪里用了map集合,为什么你们要选map,又或者为什么要选List,说下原因
5.集合之间的转换你们业务涉及到吗,业务哪个地方转换了
6.集合元素排序怎么用的
7.Collections是什么东西,有哪些方法
8.泛型有了解吗,说说
9.你自己定义过泛型类吗,哪里用的
10.反射有接触吗,用在项目中哪些地方
11.你们系统有涉及到时间操作吗,用的哪个类,你写过哪些时间类,java本身的时间类有哪些,其他创建时间类的工具用过吗,里面有哪些时间类,
12.JAP知道吗
13.AOP项目里用过吗,你怎么写的,
14.docker命令
15.行吧我们先聊这么多吧,你有什么疑问吗,


13.线程安全的map集合允许有空值吗,说说行或者不行的原因,其下他哪些map类型可以有空值,哪些不能有空值,你们业务哪里用了map集合,为什么你们要选map,又或者为什么要选List,说下原因

1,你们项目中用了哪些设计模式,用在哪?
2.谈谈对spring框架的理解
3.项目当中怎么用AOP的
4.redis常用命令 
5.常用的linux常用命令
6.前端了解过吗
7.js有哪些基本数据类型
8.js怎么创建对象
9.vue用过吗
10.你有什么想问我的问题吗

1.RabbitMQ的原理,理解
2.项目中有没有出现消息堆积问题
3.HashMap的理解
4.HashMap 1.7的时候形成环的过程。
5.HashMap线程不安全,有其他替代的方案吗?
6.ConcurrentHashMap为什么是线程安全的
7.synchronized锁和其他锁比如Lock锁的区别
8.MySQL底层数据结构,介绍一下B+树
9.B+树和B树的区别
10.事务的隔离级别介绍一下

京东方 base:上海

 1.用户管理指什么用户
2.用户这块不是基本都会带嘛,为什么还要去做这个东西
3.你们数据是怎么放到ES里面的
4.ES里数据如果有重复怎么办
5.搜索服务里面主要搜索什么东西
6.对ES这块的分词设计有做过吗
7.你觉得你做的几个模块比较难的一个模块
8.Redis的数据会和MYSQL的数据进行同步吗?任务在执行的时候如何保证Redis和MYSQL的数据一致?你在这个项目是怎么处理的,就比如从Redis中已经拿到了数据,但是又把数据从MYSQL中删除了
9.你写的这几个模块都是短时间内就差不多都熟悉了吗?你是怎么去了解这些服务,怎么快速上手?
10.平时编码有什么编码习惯吗?
11.自己会做一些抽象、封装这种事情吗?
12.你用微服务和传统的这种SpringBoot项目你觉得有什么差别
13.你会有参加需求这部分的东西吗,就比如自己去做设计、分析
14.分布式存储能介绍一下吗,你用到了哪些东西?
15.你们Redis的话一般是什么样的高可用方案
16.自己有了解过怎么部署Redis集群吗
17.Kafka创建Topic的时候怎么去考虑他的分区设计
18.你们Kafka的数据量一般有多少
19.你们用Kafka的时候有重复消费的情况吗
20.线程池你平时有用到吗?什么情况下会去使用线程池
21.有遇到过多线程的线程安全问题吗?就比如多个线程操作同一个资源怎么办
22.事务失效你知道吗
23.你刚该说的事务非代理调用导致事务失效你能举个例子吗
24.两个方法都用了@Trasational注解,然后A方法调用B方法,这个事务会失效吗?A方法执行失败了这个事务会回滚吗
25.假设现在让你写个单例对象,或者说是生成一个Bean,但是我要求这个Bean不能超过三个,代码应该怎样实现?代码硬写
26.平时linux命令有用到过吗?查看CPU的使用率是哪个命令
27.SQL优化有经验吗
28.python和shell脚本有了解吗
29.大数据方面的东西有了解过吗
30.平时有什么兴趣爱好
31.上一家的离职原因是啥

1.项目开发过程中,遇到了那些困难?怎么解决的?
2.项目中权限怎么控制的?
3.Maven的package指令和install指令的区别?
4.快照版和正式版的区别?
5.内连接,左右连接的关键字
6.A表ABC数据,B表BCDE数据,内连接,左右连接的结果是什么?
7.Redis的数据结构有那些?
8.Redis在项目中那些地方用到了
9.Redis的哨兵集群
10.介绍一下智能零售项目(简历中的第三个项目)
11.使用线程池时,任务来了,最大线程数满了,阻塞队列没满,会怎么样?
12.使用线程池时,任务来了,最大线程数满了,阻塞队列满了,会怎么样?
13.wait()和sleep()的区别?
14.有没有用过 elastic-job?Dubbo ?

1.说一下你做的项目模块比较难忘及运用的技术?
2.在你这个项目中redis除了缓存数据还有用在其它地方吗?
3.redis什么情况下会使用分布式锁,在哪些地方会使用到?
4.获取锁的时间是多久?
5.你们项目的登录系统权限验证是用什么技术做的?
6.java有哪些权限验证的框架?
7.mabatis往mysql插入一条数据之后,怎么拿到插入这条数据的字段id?<selectKey>
8.定义内部类有哪几种类型可以定义?
9.redis缓存击穿、穿透、雪崩分别代表什么意思,什么情况下会发生,怎么去预防?
10.布隆过滤器添加元素的命令?添加多个元素? bf.add   bf.madd  
11.项目部署有做过吗?
12.Linux创建多级目录怎么创建?



mabatis往mysql插入一条数据之后,怎么拿到插入这条数据的字段id?
- 配置文件方式  :<selectKey keyColumn="id" keyProperty="id" order="AFTER" resultType="int">
- 注解方式 : @SelectKey 
定义内部类有哪几种类型可以定义?
- 普通内部类 : 在一个类中在写一个 class 类名
- 匿名内部类
- lambda

base:上海思量

1.最近这个项目前端用的是什么 vue + element
2.你们项目MongoDB主要用来做什么的?为什么不用MYSQL呢?但是MongDB做聚合和关联查询的时候效率不是比较低吗
3.基础的MongoDB数据库的语句还有印象吗,有写过吗?MongoDB聚合、分组查询的关键字是什么?
4.MYSQL的三范式知道吗
5.MYSQL关联查询除了左、右、内还有什么?除了子查询还有什么?
6.你们项目量很大吗,需要用到ES
7.你们大表的数据量有多少? 百万级数据
8.实时通讯用的是什么?
9.Java面向对象的几个特征
10.Java的加密用过哪些
11.说下你对GC的理解
12.OOM有遇到过吗
13.运行时异常你遇到过哪些
14.有做过文件的上传和下载吗
15.输入输出流有了解过吗
16.创建线程池的方式有哪些
17.物联网项目有接触过吗
18.你做的这些项目中,有没有那个技术点是比较难的
19.自己有部署过项目吗
20.Linux常用操作指令

1.上一家公司你的团队规模
2.项目有PC端吗,小程序呢
3.对springcloud理解
4.网关做的什么事情
5.抽象类和接口的区别
6.你的项目中哪里用到了抽象类(项目开发中抽选类和接口使用的选择)
7.ES里面怎么做关联查询(我说不能搞,我没搞过, 面试官说可以搞)
8.现在有10亿的数据,让你去做查询, 你怎么去设计呢(ES)
9.为什么选择用mongo
10.能接受出差不
11.i++在多线程情况下是不是线程安全的,如何实现i++线程安全,实现累加
12.多态啥意思, 有用到过吗
13.java开闭原则
14.redis应用场景(面试官提到redis实现MQ)
15.为什么使用Kafka
16.设计模式,用到的,了解的说一下
17.平时学习途径
18.spring里面的事务, 都加了事务注解, A方法调用B方法,会不会都执行
19.Bean是不是线程安全的,想要实现线程安全要怎么做, 默认的bean是单例的



.i++在多线程情况下是不是线程安全的,如何实现i++线程安全,实现累加
方式一 : volitia 修饰, 加锁
方式二 ; 使用原子类 AutomicInterger

平时学习途径 :  极客时间购买专栏 , 掘进购买课程 , B站 , 腾讯课堂 , 51CTO学院

上海宏人网络科技有限公司

1.MYSQL的索引,不同索引的使用场景是什么
2.集合
3.MinIo的访问路径是有时间限制的,时间过期了你们是怎么设置的
4.ES有用来做什么数据存储吗
5.你们ES是采用历史数据迁移还是数据备份
6.平时业务有涉及到大数据量的导出处理吗?导出数据涉及到的数据量有多少?能到达30万50万吗
7.平时有涉及到MYSQL的优化吗
8.慢SQL的优化有吗
9.项目中的高并发解决方案是什么
10.两个用户并发操作怎么处理
11.RabbitMQ消息堆积问题怎么解决
12.前端有了解吗?有开发过前端页面吗
13.前端用的是什么框架
14.Linux常用命令有哪些
15.项目中遇到过的最大的数据存储量是多少
16.深拷贝和浅拷贝清楚吗



MinIo的访问路径是有时间限制的,时间过期了你们是怎么设置的 : 
- MinIo中资源分享路径的有效期最多7天
- 定时刷新分享链接(定时任务) , 当minio中文件数量较多的时候 , 很耗时
- 我们项目中没有使用分享链接 , 直接设置桶策略为只读模式 , 用户可以直接根据资源路径访问资源, 绕过了分享时间限制

你们ES是采用历史数据迁移还是数据备份 :
使用的是logstash/MQ做的增量数据同步 , 把新增和修改的 数据同步到ES , 保证MYSQL和ES之间的数据一致性

深拷贝和浅拷贝清楚吗 
- 深拷贝 : 对一个对象进行复制, 复制完成之后得到一个值相同的对象, 但是对象的地址值不同  
   - 实现 implements Cloneable
   - 将Java对象换JSON , 再重新转为Java
- 浅拷贝 : 对一个对象进行复制, 复制完成之后得到一个值相同的对象 , 两个对象的地址值相同

1. redis超时时间设置多少
2. 内容审核怎么做的,阿里接口收费怎么收的,密钥存在哪的
3. redis的zset和hash存热点数据,超时更新机制怎么做的
4. minio存电子合同怎么读取的,怎么让用户仅能读取自己合同
5. 怎么生成唯一的订单号,雪花算法的实现原理,不用雪花算法怎么生成
6. char和varchar的区别,使用场景呢
7. 两个字段A和B,两个sql语句,一个查A和B 一个查A,怎么加索引,为什么
8. 分布式锁怎么用的,超时时间设置多久,命令是什么,为什么不直接设置长一点



minio存电子合同怎么读取的,怎么让用户仅能读取自己合同
- 用于私有数据, 通过Java程序鉴权下载
- 用户发送请求, 携带相关参数(用户信息 , 权限信息 , 文件路径)
- Java程序接收到请求之后进行权限校验, 校验通过去minio下载文件字节
- 通过response将文件数据响应给客户端
   - 一个流  响应流
  - 二个头 :  content-type : 文件类型     conten-disposition : 指定下载文件名称

怎么生成唯一的订单号,雪花算法的实现原理,不用雪花算法怎么生成 : 
- 雪花算法
- redis自增
- 美团leaf算法

1. 你参与的是前端还是后端开发,前端有涉及吗
2. 项目用的什么数据库,mongoDB存的什么东西,感觉你数据量不会很大,为什么不存在mysql里面,mongoDB有什么好处
3. 项目部署在什么环境    阿里云
4. spring clound组件
5. java基本数据类型的存储区别
6. 抽象类和接口的区别
7. 除了nacos,其他注册中心组件有没有了解  eureka  nacos  consul   zokeeper  redis 
8. 了解cap定理吗,nacos满足哪两个条件
9. feign和httpclient有什么区别,feign除了做服务间的调用还有没有其他用处
10. ribbon负载均衡策略
11. redis分布式锁怎么实现,有没有接触过别的技术做分布式锁,zookeeper做分布式锁知道吗
12. redis怎么做模糊查询,scan具体是怎么实现
13. redis事务怎么实现的
14. redis持久化
15. es的term和match有什么区别
16. es脑裂问题
17. mybatis优点,mybatis plus做了哪些扩展,能实现哪些简单的sql语句
18. #{}和${}区别
19. mybatis一级缓存和二级缓存,一级缓存二级缓存生命周期
20. mybatis延迟加载




 feign和httpclient有什么区别,feign除了做服务间的调用还有没有其他用处
feign : 是一个声明式的http客户端工具, 能够根据注解自动组装请求, 底层使用的是URLConnection , 不支持连接池
httpclient : 也是一个发送http请求的客户端工具 , 能够发送http请求 , 需要自己设置HTTP请求 , 支持连接池性能更好
我们项目开发中 , 为了让feign的性能更好, 会使用httpclient 替换底层的URLConnection  , 让http请求的效率更高

1.在项目里主要担任的职责
2.看你简历里有用过es,倒排索引怎么实现的
3.es的分页和分片操作
4.项目中为什么要用es,为什么不用mysql
5.GPS上报频率   5-10S 
6.GPS上报的点位,是怎么进行存储的    ES 
7.存量的数据怎么进行查询,我只想查询一个单车的数据总不可能全到redis查
8.在库里面存储的很多GPS的点位,我是怎么检测这个车辆的电量低于阈值或者超出范围的
9.我通过EMQ收集到电量低于阈值的电车,他会一直上报,你们是怎么做消息筛选的
10.数据量比较大,你们有用到分库分表吗,在什么场景下做的分库分表
11.分库分表用的什么来做的
12.分布式锁怎么解决高并发的,详细说一下
13.分布式锁是通过什么实现的,你有了解过吗
14.为了防止超卖,你们锁的是什么数据
15.在高并发场景下,你们把资源锁定了,大量qps涌入,请求超时你们是怎么解决的
16.request模型请求完,从你mvc把结果返回出去,有没有用到中间键来解决高并发
17.看你有用过xxl-job,还用过其他的定时任务吗
18.xxl-job通过什么来设置定时时间
19.minio和直接把文件存储在服务器上有什么区别
20.我把文件上传到minio,他会返回什么东西,除了网址还有什么 
21.MQTT和EMQ有什么区别
22.nacos在你们服务中有什么作用
23.feign有哪些协议 http
24.
25.我的一个服务想被nacos发现,需要做哪些操作
26.分布式事物是用什么做的
27.seat是怎么实现分布式事物的
28.线程池里有哪些可配置的东西
29.JVM调优参数
30.OOM一般是什么区域溢出
31.什么场景下会导致内存不够
32.常用的MYSQL字符集   UTF8   UTF8MBE4
33.用UTF-8设计字段,字段长度不固定,最大为200汉字,你会设置为什么类型,以及他的长度为多少
34.char和varchar的区别
35.假设你现在有一个Arraylist,Arraylist里放的对象是学生,学生有一个年龄,Arraylist里有20个对象,把age小于18的删掉,得到一个新的Arraylist,你会怎么做

4.13

1.在开发过程中有用到什么设计模式
2.如何看mysql用的是什么引擎
3.如何看mysql用的事务模式是那种
4.mysql的事务级别
5.安装mysql的时候的端口在哪里配置   安装包按照 : my.ini  docker 命令 -p指定端口映射  
6.mysql的部署架构(这里回答的是主从集群)
7.主从集群数据是怎么同步 binlog
8.如何看一个进程被杀死 ps 
9.如何统计当前目录占用磁盘空间大小,du-h指令  h是什么意思
10.用java虚拟机解决过什么实际问题 (这里回答的是cpu突然飙升的情况)
11.晚上发生的cup占用高,白天不高如何排查

1.每次插入表的时候生成调用雪花算法生产id,还是先生成好,还是用缓存实现?
2.介绍雪花算法组成,什么时候会重复,如何解决?
3.mysql索引数据结构有了解吗?
4.B+树叶子节点和非叶子节点存的什么东西?叶子节点之间怎么连接?
5.sql优化有了解吗?比如慢sql。
6.有一张表,在实时有数据插入和查询,现在需要建立一个索引,这个建索引的语句怎么写?如何避免锁表问题。
7.索引失效场景。
8.项目数据量大吗?有没有并发问题?哪些场景?如何解决?(回复用了分布式锁)
9.介绍一下redis分布式锁。代码如何实现,比如key-value是什么?什么时候释放锁资源?
10.redis缓存,如何保证数据一致性?
11.多线程有用到吗?如何创建线程池?一般配那些参数?
12.核心线程数和最大给的多少?如何评估的?有做压测吗?是否把线程跑满?
13.线程数达到最大后如何处理?(采用主线程执行的策略)这种策略有什么问题,比如一直开主线程会有什么影响?
14.线程池会用什么关键字修饰吗?看过源码吗?
15.线程是每次进来都会new,还是怎么样?
16.还有别方式创建线程吗?
17.线程有哪几种状态?
18.除了分布式锁,还了解其他锁吗?syconlized,lock锁在开发中有应用场景吗?
19.mybatis一级二级缓存介绍。
20.mybatis分页有了解吗?除了limit物理分页,了解过其他分页吗,比如逻辑分页吗?
21.#{}和${}区别。
22.动态sql标签有哪些?
23.平时哪些集合用的比较多?
24.hashmap会用哪些方法?
25.hashmap执行put方法的流程?
26.遍历map有哪些方法?用的是哪个方法?
27.set集合有用过吗?特点,用途?
28.与其他系统进行交互的接口写的多吗?比如与其他平台的数据交互.
29.spirngboot里面的注解有那些?哪个注解使用了spring里面ioc思想?ioc介绍一下.创建出来的对象是单例还是多例的.
30.400是什么问题? 具体是什么问题,参数多了还是少了,还是什么的?
31.给了你一份json报文,如何解析?   fastjson  jackson 
32.工作中遇到印象深刻的生产问题,或者技术问题?
33.linux命令?给你一个ip和端口查看网络状态?
34.个人情况.就职状态,离职原因.之前薪资,期望薪资.加班,出差有没有想法.入职时间.



雪花算法生成的ID值一定不重复嘛 ? 

- 节点数量超过 1024 , 有可能重复
- 所以操作系统的时间都是来自于世界标准时间服务器  , 我们的操作系统每隔一段时间就会自动从世界标准时间服务器同步时间 , 在这种情况下有可能会出现**时间回拨**, 时间回拨有可能会重复

时间回拨 :  在一个时间点生成了一些id值, 之后经过时间回拨回到了之前的时间点, 在这个时间点再次生成id 就有可能会出现重复

解决 : 

- 如果时间回拨时间较短,比如配置200ms以内,那么可以直接等待一定的时间,让机器的时间追上来。
- 如果时间的回拨时间较长,我们不能接受这么长的阻塞等待,那么又有两个策略:
  1. 直接拒绝,抛出异常,打日志
  2. 雪花算法支持 32个数据中心的32台机器 ,  一共1024个节点 , 我们一般用不完这些节点 , 在每个节点上准备1-2个备选的数据中心ID和节点ID  , 如果基于当前数据中心ID和节点ID 生成了重复的ID值, 这个时候直接切换数据中心ID和节点ID 

1.说一下spring的IOC 
2.AOP有什么用
3.bean的生命周期
4.spring的事务作用
5.springboot的作用
6.项目怎么打包 maven  package 
7.springboot的核心注解
8.开发过程中,怎么指定配置文件
9.有没有遇到过多环境配置文件,怎么指定
10.mybatis优缺点
11.#{}和${}区别?
12.mybatis怎么把封装结果封装成对象
13.ResultMap和ResultType区别
14.join和left join是区别
15.union 和 unionall的区别
16.索引的优点
17.有没有用过mysql存储过程
18.mysql的优化
19.项目中怎么用的redis
20.redis的分布式锁?会出现什么问题?
21.nacos怎么用的,怎么判断服务状态
22.怎么实现负载均衡
23.Nginx用到过吗?是什么作用? 启动命令
24.常用的linux命令  搜索日志关键字?

1.介绍一下你最近做的一个项目及运用到的技术点?
2.mysql锁在你的项目中在哪些时候有使用到?     乐观锁  version  没用过但是了解过
3.简单介绍一下Redis?
4.Redis基本数据类型?
5.Redis数据持久化策略?
6.缓存雪崩,缓存击穿,缓存穿透?
7.有没有了解过mysql的主从同步?
8.说下你做的CRM管理系统线索和商机是怎么分配的?
9.你的项目中那些地方用到过分布式事务?
10.了解过那些消息中间件,有在项目中使用过的?
11.RabbitMQ在你的项目中那些地方使用到?
12.项目中有没有做过分库分表,思路?
13.你们项目使用Linux主要做什么?
14.你的项目中热点数据是怎么做的,依照什么?
15.项目部署有做过吗?

1.后端涉及到的模块
2.讲一下负责的任务体系
3.你们又多少个点位     
4.工单创建流程
5.spring的循环依赖场景解决方式
6.多线程是怎么使用的
7.线程安全常用的类
8.HashTable和ConcurrentHashMap的区别
9.sql优化
10.索引失效的场景
11.什么情况下不满足左前缀法则
12.你一般基于什么情况建立索引

1.string常用方法,
2.左连接和内连接的区别,
3.Spring的常用注解,
4.Mysql子查询业务场景那里用到了,
5.Redis的删除方式,
6.拦截器有了解过吗是干嘛用的,
7.AOP使用场景怎么用的,
8.支付做过没有,
9.docker的命令,
10.linux的命令,
11.权限交验怎么做的,
12.nginx了解过没有还问了些niginx的我听不懂,
13.数据库的分组,排序是什么关键字,
14.审批做没有,
15.HIBERNATE用过没有,还有一两个问题问的我都没听清不懂是什么意思(快问快答,面试官说我问,你会就会,不会就不会)

1.介绍下你最熟悉的项目
2.redis单线程阻塞有没有了解过
3.redis持久化
4.redis同步数据库
5.redis内存优化(回答的是redis数据过期机制和淘汰机制)
6.MySQL索引
7.B树和B+树区别
8.怎么做sql优化



redis内存优化
redis单线程阻塞有没有了解过 : 
- redis命令执行是单线程的
- redis中也用到一些多线程操作, 例如 : 数据持久化和主从数据同步 , 状态监控等都是多线程运行的
如果有大量命令发送给Redis执行 , 可能会出现阻塞 , 使用Key名称获取指定规则的key ,如果数据量比较大也有可能会出现阻塞

1.介绍一下MES
2.介绍一下elasticsearch
3.Redis的使用场景   
4.MySQL海量数据存储解决方案
5.MySQL主从同步
6.假如说现在有一个支付订单,用户需要立马查询如何让用户读到的是主库的数据?(主要是问从库没有数据,如何读主库)  配置读写分离规则 (优先从库读, 从库没有找主库)
7.说一下synchronized锁和分布式锁的区别
8.有了解过日志管理吗?发现服务现在有一个错误你如何排查?
9.你们公司项目软件开发是如何进行版本控制的?
10.你们公司项目代码怎么管理的?
11.你们公司如何解决服务迭代更替,用户请求如何访问到修复好的分支代码上面?
12.具体有哪些分支?
13.有了解阿里巴巴代码规范吗?
14.你觉得你这3年的工作经验和别人相比有什么优势?

1.用的比较熟悉的或者比较多的中间件, 我说的redis
2.redis的使用场景
3.热点数据设置的失效时间是多久
4.热点数据redis中失效, 怎么解决, 问的就是缓存穿透
5.除了redis实现分布式锁还有哪些可以实现
6.你们项目并发量大不大
7.kafka有没遇到消息丢失的问题,提到消息状态表
8.消费者发送回调丢失 (重复消费)
9.redis集群部署是你们部署的吗
10.项目中有涉及到多数据源的使用到吗,切换数据源失效场景
11.线程池的工作原理
12.多线程开发过程中涉及到一些加锁了解哪些
13.synchromized和lock的区别
14.常用的设计模式
15.在实体类上加@Builder注解对属性加了默认值, 然后通过builder去对对象赋值的时候默认值会生效吗
16.Sql优化,说说你的理解

1.对于外包怎么看
2.springboot 的bean 是怎么装载的,详细说一下(我给他说了一下自动装配)
3.那他这里面的一个Conditional的注解里面会有注入那些类,比如呢,除了ConditionalOnClass还有什么
4.对StringBoot的功能函数有什么,比如对启动时或启动完成对个性化业务的定制
5.ConmendLineRunner的接口有了解过吗
6.bean注解和config注解在什么场景会用到
7.java8的jdk1.8的新特性有哪些
8.Stream 流用过哪些方法
9.对接口怎么增强的
10.controller service Repository Component 这几个注解怎么用的
11. String、StringBuffer、StringBuilder
12.接口抽象类什么区别
13.RabbitMQ你们项目中是怎么用的,如果同时有十个人发送消息,怎么处理怎么消费
14.消息丢失和重复是怎么处理的
15.重复消费的一个id存在哪?(我说的redis)
16.redis用的单点还是集群
17.连接redis怎么连接的

4.14

宁波思艾特软件有限公司

1.接口和抽象类的区别
2.什么是反射?反射的应用场景
3.说一下TCP和IP模型
4.HTTP常见状态码有哪些
5.你们项目中代码是如何管理的
6.有没有在写代码的过程中写单元测试
7.你们项目的测试代码覆盖率是多少   
8.说一下你用过的设计模式,在项目中哪里用到了
9.你们这个微服务项目是怎么部署的,有参与过吗?使用的是Jenkins的xxx还是图形化界面(没听清,忘记了)
10你有做过前端吗,你们项目前端是web前端写的还是xxx写的(没听清)
11.选择一个MQ的消息丢失问题说说
12.SQL慢查询怎么优化

1.简单说一下异常体系
2.class对象放在内存模型的哪个地方
3.两个JVM里面的String类型是同一种类型吗,换个问法吧,什么东西决定java里面的一个类型
4.你负责的库存ER模型是怎么样的
5.你们库存ER表有那几张表+
6.你们QPS有多大,你说你们KPS是500多,那你拆了几张表

1.优惠卷秒杀怎么做的 ()
2.rabbiteMQ是在哪用到
3.项目中的重难点
4.Mysql语句运行慢怎么解决
5.集合有了解过没有
6.es里储存的是什么东西
7.预览做没有
8.项目中是怎么解决高并发的

1.排序算法在实际工作用到过没    
2.spring依赖注入的方式,
3. spring事务的隔离级别
4.事务的传播行为,失效场景?
5.redis缓存穿透,击穿,雪崩?
6.mybatis分页查询怎么做?
7.微服务部署过吗,配置文件怎么管理的?
8.项目中的ES怎么用的
9.前端了解过吗

0.介绍下项目中的令你印象深刻的点
1.不用mybatis怎么写一个数据库操作接口供其它服务调用操作多张不同的表
2.sql语句执行很慢怎么优化
3.springboot自动装配原理
4.springboot注解
5.spring请求访问路径的实现原理

4.15

1.参与度最高的项目介绍一下
2.es干嘛用的
3.es集群是你搭的吗
4.运行日志是存es还是哪里
5.线上遇到bug怎么查询日志,怎么排查的
6.linux熟吗,查看日志后400行命令
7.项目中用到docker了吗
8.慢sql怎么排查
9.对springmvc的理解
10.redis用了哪些数据类型
11.redis锁怎么实现的
12.rabbitmq怎么保证消息的可靠性
13.xxl-job干嘛用的
14.晚上xxl-job执行间隔变长是什么原因
15.cpu突然100%可能是哪些原因

4.16

1.项目中用到了什么技术,spirng?spring mvc?srpingboot?
2.上一家公司为什么离职?
3.为什么要来广州?
4.讲一讲springmvc的执行流程?
5.jvm的垃圾回收算法?
6.职业规划是什么样的?
7.对加班和出差的看法?
8.对公司给你分的任务比较繁琐怎么看?
9.缓存击穿?缓存穿透?缓存雪崩?以及如何解决?

4.18

1.垃圾回收机制(简历写了垃圾回收)
2.垃圾什么时候被回收
3.垃圾回收算法简单说一下
4.jvm调优(简历写了)
5.hashmap实现原理
6.了解volatile吗
7.HashMap和ConcurrentHashMap的区别
8.了解CAS吗(ConcurrentHashMap里提到CAS)
9.synchronized 和 Lock的区别
10.简单的介绍一些栈和堆
11.Spring中Bean的生命周期
12.IOC和AOP
13.AOP的原理
14.项目中用了哪些设计模式
15.项目中有遇到什么困难吗
16.SpringBoot自动装配了解吗
17.SpringCloud的组件介绍一下
18.注册中心的原理介绍一下
19.有了解过限流,熔断器,降级吗
20.Mysql存储引擎有了解过吗
21.为什么采用B+树作为索引
22.事务的隔离级别有哪些
23.RabbitMQ的工作模式有哪些
24.RabbitMQ如何解决重复消费的问题
25.RabbitMQ如和设置过期消息的
26.RabbitMQ消息是怎么存储的
27.微服务之间怎么调用的简单介绍一下
28.项目部署在云还是机器上,有多少台机器,配置怎么样的

4.19

1.rabbit和kafka的区别
2.mysql优化
3.es对做了哪些索引
4.项目部署是用的什么
5.用了多少台机器
6.不用IP地址怎么实现docker之间的调用怎么关联docker
7.数据量多大有没有分库分表
8.分库分表的工具接触过哪些
9.redis怎么和数据库保持一致
10.数据库中数据要删除怎么把redis中缓存也删掉

1.介绍下你的项目负责的业务和用到的技术
2.redis怎么做消息队列
3.redis除了消息队列还做了什么
4.怎么实现redis保存热点数据
5.redis数据同步怎么做的
6.热点数据更新怎么实现的,热点数据的存活时间设置的多少
7.推荐热点怎么算分的
8.mysqls业务场景怎么建索引
9.索引失效场景
10.StringBuilder和StringBuffer区别
11.为什么使用线程不安全的StringBuilder多而不使用安全的StringBuffer
12.char和varchar的区别
13.举一个char和varchar的使用场景
14.不用工具类怎么在技术上实现生成纯数字订单编号保证绝对不重复(回答用时间戳但是不能保证绝对不重复,雪花算法生成订单编号又无实际意义)

4.20

1.介绍下你项目中负责的模块和用到的技术
2.redis数据类型,跳表有没有了解过
3.redis缓存击穿,缓存穿透,缓存雪崩及应对策略
4.redis怎么和数据库保持一致
5.说说对spring和springboot的理解
6.aop的应用
7.对mysql的理解
8.为什么选择跨专业?是不是培训出来的

1.重难点功能
2.ES高亮如何实现
3.SpringCloud用了哪些组件
4.项目几个人 运维谁做的
5.一个项目从0-1的具体流程

4.17

4.17面试题
1.是不是前后端分离
2.前后端对接的方式
3.swagger是你自己写的吗
4.swagger调用权限
5.前端了解多少
6.mongodb的使用场景
7.是否涉及分片
8.是你部署的吗
9.redis集群
10.哪一个是真正的主节点?怎么部署的
11.数据雪崩 数据穿透
12.freemarker循环
13.freemarker回显的数据怎么和后端对接
14.minio是单点还是集群
15.springcloud的理解
16.nacos的监听机制
17.nacos的配置文件会存储在本地吗
18.nacos多环境配置
19.nacos的组和使用场景
20.熔断限流的配置
21.网关中的负载均衡的原来
22.网关中的转发的配置
23.分布式事物
24.MySQL调优
25.项目是自己的搭的框架吗
26.docker部署在哪里
27.liunx的性能优化

4.21

武汉智远软件

1. 表设计
    一个员工要请假 填写请假天数 请假事由
    经过部门老大审批 有同意/拒绝 拒绝事由
    经过项目经理审批 有同意/拒绝 拒绝事由
   可能之后有各种人审批
要求:
   - a. 设计表
   - b. 统计这个员工请假的天数 同意的次数 拒绝的次数
   - c. 扩展性
2. SQL
     一张学生表 有三个字段: 姓名、学科、分数。 查询各科成绩前2名
3. 设计一个自定义注解 来记录日志
4. mq的路由有哪几种

4.24

皮皮熊科技

1.为什么要用Elasticsearch
2.kafkaStream流,存储到redis后是怎么排序的
3.kafka消息的幂等性
4.你最熟悉的数据库
5.有没有SQL优化的经验?结合实际项目来讲一下
6.IP用什么数据类型来存储
7.关系型数据库和非关系型数据库的区别
8.项目中哪些地方用到了redis
9.分布式锁在你的项目中是怎么用的?
10.熔断器怎么用的?
11.nacos的原理

4.25

盒马鲜生

1.单元测试是怎么做的?
2.有没有做断言?
3.如果单元测试需要调用别人的接口,但是调用不了怎么处理?
4.如果要调用别人的接口怎么保证数据是你想要的结果?
5.线程的隔离级别
6.mysql索引(左前缀法则)
7.synchronized和volatile

4.27

中软

1.介绍下你项目中负责的模块
项目上线了吗?
有没有遇到过线上问题
开发过程中有没有遇到什么问题
2.redis数据持久化机制
3.redis怎么保证储存热点数据
4.hashmap原理
5.arraylist原理
6.创建线程的方式
7.线程池
8.synchronized
9.springboot核心
10.linux命令
11.mysql优化
12.对加班怎么看
13.离职的原因

青岛腾扬信息技术 base:青岛

1、先介绍下
2、这个项目做了多长时间
3、有多少用户量
4、你们项目是什么配置,多少开发,产品
5、你是在里面具体负责什么工作
6、比如一个任务,需求,拆分成多少个工时是多少
7、这个时间是由谁来评估
8、你们公司多少人,多少开发,全都在一起吗
9、项目框架部分是用的什么
10、谁来做这个工作,就是说框架搭建,数据库设计
11、你们有运维吗
12、那你们nacos,服务器搭建都是你们自己在做吗
13、jekins是谁来配置的,就是一个项目刚开始的时候
14、就是说你们项目经理之前是开发或者运维是吧
15、这个项目是从头开始还是从网上找的开源框架
16、那你们登录是由谁来处理
17、你们项目用的什么登录框架
18、你这边负责的是哪一端的API
19、你们这个通讯是怎么实现的
20、我是说那个即时通讯
21、那你们这个业务量挺贵的
22、那你们代码生成用的什么东西,根据数据库生成service这种
23、你们数据库结构是统一设计还是个人设计个人的模块
24、你们模块之间是没有关系的吗
25、有哪个项目是从头开始的,比如数据库搭建,需求分析到上线
26、你是哪一年的
27、如果让你独立开发一个项目你可以吗(单体项目,前后端分离)
28、你前段是了解多少
29、你们这样的用户量的话数据库有进行优化吗
30、对MySQL也是进行单独了解是吧
31、那这个覆盖索引有了解吗,就它这几个索引
32、我先给你介绍下我们公司,驻场外包,有很多项目,当然会分优先级,活肯定是有的。
然后具体的待遇方面是你去跟HR去谈,我们只是招我们感觉合适的人。你可以先跟我们透个底,我们这边工作时间是1朝九晚六
33、你为啥来青岛
34、你找到住的地方了吗
35、在哪租的房子
36、你们之前项目加班多吗
37、你上个公司离职原因
38、那你想在一个地方固定呆着吗,还是想在流浪流浪
39、那这种图像或者音频处理做过吗,我们这边这种是做的多一些
40、可能需要你独立完成一个项目,就是后端方面。然后你对这个服务部署也是自己弄吗。
41、看你这边能接受吗,这种委派开发的形式

山东沐华医疗科技

1、为什么来青岛
2、最近这个项目你主要做了什么功能
3、redis主要是做了什么用
4、redis的key怎么设置失效时间
5、大体说一下MySQL的索引原理
6、像你说的索引不是越多越好,Java这边有什么注意事项吗
5、怎么控制MySQL的索引的量
6、微服务遇到feign接口调用超时,怎么处理
7、关于Java堆内存空间启动的时候怎么指定内存空间
8、栈和队列有什么区别
9、你会操作docker吗
10、我想查看docker容器日志怎么看
11、我要实时查看呢
12、我们关于Java这边,平时是怎么去学这一块的,Java技术这一块的
13、hashmap和hashtable的区别
14、有用到线程的时候吗
15、线程的Run方法和start方法这两个有什么区别吗