小米软件开发Java面经

二面:
1、手撕做题:力扣 15.三数之和
2、浅谈实习
3、熟悉 SpringCloud 的哪些组件?
4、项目中用到的是 Seata 的哪种分布式事务模式?底层原理是怎样的?
5、项目中的限流操作是把什么作为限流的资源?
6、代码中一个接口的限流代码是怎么去实现的?
7、假设现在我的服务上有成百上千个接口,现在都需要去做限流熔断的操作,如何基于 Sentinel 去实现?
8、谈谈自定义一个组件集成到 SpringBoot 中,应该做哪些操作?
9、使用过 Java 的哪些 JUC 工具?
10、假设有一个线程 a 和一个线程 b,它们分别有自己的任务 A 和任务 B 需要完成,但是 b 线程需要等待 a 线程执行完任务 A 后才可以执行任务 B,请问有哪些实现方式,越多越好
11、volatile 保证变量可见性的原理?
12、用 synchronized 加锁能否保证可见性?
13、一般业务中通过什么来创建线程池?线程池有哪些核心参数?
14、假设一个场景,项目中用到了线程池,在服务上线前,我依据自己的经验预设了一些线程池的参数,服务真正上线后,面对 C 端的流量我无法保证我预设的参数是最合适的,就需要去动态的调整这些参数,如何去设计一个具备动态性能的线程池?
15、针对问题 14 我提出把核心参数的设置交给配置中心,创建线程池时读取参数就走配置中心读,这样修改后可以实现无感的切换。但是面试官提到,这种方式能实现无感的切换,但是没有办法实现自适应的线程池核心参数调整,还是需要手动的去调整参数。面试官引导说第一时间想的不应该是去修改,而是如何观测这些参数的变化,然后让先设计一下如何观测线程池核心参数的变化
16、如果要做观测,谁来观测?怎么观测?整个设计的流程是怎样的?
17、Redis 的哈希数据结构有哪些实现方式?
18、针对 Redis 哈希数据结构出现的大 Key 问题,如何去解决?
反问
全部评论
14 15 16 用cat之类的埋点监控流量是否过载吧,要有过载直接告警,再去配置中心改下参数重新上线这样的
点赞 回复 分享
发布于 2025-11-10 14:23 北京

相关推荐

面试时间:2h流程:笔试+面试,一面完光速拉二面面试官过来。1.索引有哪些类型?(聚蔟 非聚蔟,八股吟唱)2.如何判断哪些字段要加索引?(答的主键要加,有唯一约束的可以加,高频查询的列要加,经常用来order by排序的要加)3.什么情况下索引会不生效?(八股吟唱)4.一张学生表,里面有学生姓名,学生年龄等字段,重点关心学生姓名stu_name,如何查出重名的学生?(我答group by,没答对。)5.有一张学生成绩表,里面有学生姓名,课程名字,课程成绩,比如:张三,语文,80;张三,数学,60;如何查出所有成绩都>=80分的行数据?(兜兜转转后,我答的先用子查询查出,成绩<80分的行数据,并group by分组去重,再用这个子查询的临时表和主表进行比较,找出姓名重名的行数据,截去掉这些数据,得到的就是所有成绩>=80的优秀学生数据。面试官说思路没问题,我猜可能中间有点差错,因为我忘记group by的机制了)6.创建线程的方式有几种(三种,并开始八股吟唱ing)7.笔试里,是对单例模式没有思考吗?(我说笔试写的根本不是单例模式,写的单模板模式,我不敢写就没写,并背诵单例模式思路)8.除了单例模式,你还了解哪些设计模式?(以spring源码为基础,举出里面用到的设计模式,aop的代理模式与策略模式巴拉巴拉)9.如何实现登录的互踢?设备a在登录账户后,设备b也登录账户,需要设备a的账户被踢掉。(这个是我项目经历里的,我用的是redis中存token,同时加上随机值作为唯一标识,新设备登录账户,将同样token前缀的key删除,再把新设备的token存进去,前端隔一段时间检查用户登录状态,这样旧设备被检测token过期,被踢掉。)10.如果我先登录完,然后新开一个页签,我需要再进行登录一次吗?就是说,我的状态还在吗?(在,原因我不清楚,我当时说的因为浏览器做了缓存)11.网关是如何拦截请求,做白名单校验的?(项目经历里的,黑马的那一套,自定义请求拦截器写好白名单,网关拦截请求并对白名单进行匹配,从而判断是放行还是继续拦截做校验)12.非静态方法里能定义静态变量吗?(八股吟唱)-------------------------一面结束,十几分钟后二面面试官带着hr来了。13.遇到不好打交道的人应该怎么做?14.职业规划是啥,考研还是就业。15.说说自己的优缺点。16.讲讲你实习经历里的业务(最让我吐槽的一点,也不说是哪方面业务,不问实习产出,就让我讲一整个项目的业务流程,大哥这是我写了两三个月的项目啊,我从哪跟你讲起)17.对业务流程的一些追问(连拷打都算不上,就是像个用户一样问流程,我能不能提交多次啊?我能不能以个人身份参赛啊?工作流核心逻辑是调的远程接口吗?一个技术名词都没问)18.讲讲笔试题里的算法(hot100的非重复子串的最大长度,abcabc输出3,aaaa输出1)19.写一个你熟悉的排序(只记得二分,所以写的二分)20.反问环节总结:薪资110一天,问的感觉比我面的那些5k的都难,一面全是场景题,二面也不问产出全问业务。而且实习期间不让回学校写毕设,不保证转正,还查户口问我家庭情况。。。位置也偏僻,我过来一趟要两个半小时。看得起这薪资的过不去面试,过得了面试的看不上这薪资,可以去面试检验下自己的八股水平。ps:笔试也很难,一道hot100算法,两道编程题算输出结果,两道还是三道手写sql,其余的是八股题,其中一道还打错字了,单例模式写成单模板模式,boss上hr说笔试面试的淘汰率很高,我只能说难度确实大,但有没有可能别人也在淘汰你呢😂
查看19道真题和解析
点赞 评论 收藏
分享
评论
3
24
分享

创作者周榜

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