数字马力面经 - Java

9月笔试,10.12一面,10.15二面,10.28意向
#数字马力##数字马力面经#

数字马力 - 一面 (过)50min+
● 自我介绍

● 实习内容都有些什么?
  ○ 云上巡检具体是干什么的?
  ○ 云上巡检多久一次巡检?

● 如果要日活量达到百万这个级别,课表推送该怎么做? - 引入消息队列,采用多线程分治

●大批量查询数据这种查询,比如Excel一个导出功能的时候需要查询很大的一个数据量的结果,有没有什么好的实现方案? -多线程并发  CountDownLatch 

●ThreadLocal 有用到过吗?在使用过程中有什么需要注意的点?会不会造成内存泄漏?

●git 遇到代码冲突,在同一个分支上协作的时候如何解决冲突?

●maven 依赖冲突如何解决?

●MySQL 底层索引是什么?为什么选择B+Tree

●设计表结构的时候怎么去使用索引?

●如何分析一条SQL?主要是看哪几个字段?比如它命中了哪个索引,命中的索引类型是什么?索引命中的多少条?

●MySQL 有哪几种锁?锁是如何用的?用在什么索引上面?

●MVCC 的原理讲一讲

●设计模式中的策略模式有用过吗?怎么用的?

●在项目中,学校之间会有些共性的特征,我们如何去封装这些共性特征呢?

●有没有考虑过策略模式中加上上述这种思想?

●讲一下AOP我们一般都用在什么场景?自定义注解加在哪里?自定义注解加上私有方法上可以吗

●动态代理的两种实现说一下

●Spring如何解决循环依赖的问题?第三级缓存是为了解决什么问题?

数字马力 - 二面(过)40min+

● 自我介绍三分钟,再将一些比较擅长的一些技能、亮点的地方。

● 进入公司实习后团队内部让我承担的职责,为什么要让我去做这方面的事情?这个需求的背景是什么?在这中间做了哪些事情?以及对于这些需求我是如何实现的?中间遇到的难点有哪些?
  ○ 一下子有点被问懵逼了

● cmdb中的数据与部门数据库中的数据是如何保证一致性的?
  ○ 巡检模块,定期巡检报警,无风险直接操作,有风险手动发工单与业务方确认无影响之后进行手动变更。

● 如果调用的数据量很多,在获取数据的时候我要如何读取,如何写?
  ○ 还是问的实习,其实感觉面试官想问的是大数据量场景下我要如何去优化读写操作。

● 巡检完后进行修正,是自动的还是什么?
  ○ 其实就是对于无风险的数据操作直接修正,有风险的数据操作还是发工单与业务部门沟通确认后再进行修正
● 我负责的数据修正治理的工作为什么会出现这个数据不一致的问题?有没有想过从源头入手彻底解决这个问题?
  ○ 有,但不多。1. 团队内部对实习生权限管控很严格。2.历史遗留问题太大,涉及到公司内部团队很多,产出比低。

● 我之前说os相关模块工作,主要是碰到了什么问题?
  ○ 代码架构混乱,优化os模块的架构使用了工厂模式、策略模式。对于一些共同行为和方法抽取成抽象类继承。

● 阿里云cos那边的接口有什么数据不满足我们需求?
  ○ 数据粒度的问题。阿里给的数据无法满足团队内部需要的更细的数据粒度。

● os数据巡检模块如何设计的?
  ○ 工厂模式、策略模式、面向接口开发方法。使用 go 的组合等等

● 公司内部具体用哪个云?
  ○ 其实都有用,但是侧重点不同。

● 阿里云oss它的同城冗余、可用区冗余的含义及其区别?

● 可用区,从物理现实的角度讲一讲它的概念?
  ○ 把可用区这样那样的优点、缺点稍微说了一下

● 为什么大家都流行去搞一些同城冗余,而不是做一些跨地域跨城市之间的冗余?
  ○ 一是成本问题,二是没必要。各云服务厂商基本上都能保证极高的数据安全性、可用性,极大程度上保证了数据不丢失。

● 项目中的一个背景是什么?(上上个实习做的项目)

● 你是如何去进行项目整体架构重构,来适应业务变化的?
  ○ 老规矩,工厂模式,策略模式,单例模式,面向接口开发,一套军体拳

● 某个业务数据存储的一个数据结果是什么?

● 我是如何参与到这个项目中的?

● 在项目遇到过的困难和故障?
  ○ 直接吟唱最近遇到的一个threadlocal相关的数据污染的故障,然后引出对应的八股,基本上全答上来了
  ○ threadlocal底层数据结构、key是什么,如果要跨线程传递threadlocal?

● 反问:对应这次面试的表现:整体来说不错,就是太紧张,需要去引导。
全部评论
总结一下,一面偏技术,二面偏业务
2 回复 分享
发布于 2024-11-01 15:47 湖南
我二面挂了,面了一个小时还给我挂了😅
1 回复 分享
发布于 2024-11-02 18:03 新疆
佬,你这是校招还是社招,感觉问的好难啊
1 回复 分享
发布于 2024-11-01 15:16 江西
mark
点赞 回复 分享
发布于 11-09 09:56 河南
佬,那个AOP自定义注解是啥意思
点赞 回复 分享
发布于 2024-11-04 11:17 四川
yyds
点赞 回复 分享
发布于 2024-11-01 23:35 湖南
大佬 ,加油,OC大致10号发出
点赞 回复 分享
发布于 2024-11-01 16:22 云南
我勒个去这么难
点赞 回复 分享
发布于 2024-11-01 14:52 山东

相关推荐

11-18 11:16
已编辑
蚌埠坦克学院 Java
11/12 后端长沙1.问实习,介绍实习项目说说开发流程难点啥的2.java你了解的锁有哪些,延伸问synchronized这些介绍使用3.守护线程4.缓存的实践经验有哪些?5.Redis性能好的原因是什么?6.Redis的持久化方式有哪些?各自原理是什么?7.Redis宕机重启后的加载流程是什么?RDB和AOF会先加载哪份数据?8.Redis的内存淘汰策略有哪些?9.缓存击穿、穿透、雪崩的现象及核心解决思路?10.布隆过滤器的原理是什么?11.url流程12.长连接短连接13.JVM的内存模型分为哪些部分?14.JVM内存管理的算法有哪些?15.新生代和老年代互相转换的时机是什么?16.除了新生代GC,还有哪些GC类型?17.慢查询优化排查18.索引失效19.除了索引优化、SQL写法优化,还有哪些优化查询性能的方案?(分库分表)20.怎么理解spring中的bean21.依赖注入(DI)是怎么做的?22.多个相同类型的Bean如何注入匹配?23. @Bean和@Component的区别及适用场景?24.如何拆解提示词让大模型帮助优化接口响应时间?25.写提示词的原则、思路或技巧有了解吗?26.若Cursor生成的SQL语句有语法错误(如缺少关键字),如何修复并与大模型交互?27.了解大模型的原理吗?(如Agent、RAG相关概念)28.如何看待大模型对开发效率的提升29.大模型相关的学习或了解计划是什么?30.分布式事务和普通事务区别31.反问时长45分钟面试官人很好,也有指出不足的地方,每个问题也有反馈有不太了解的地方也会介绍一下-----------------------------30分钟后业务复试-----------------------------11/18约二面
查看60道真题和解析
点赞 评论 收藏
分享
11-12 16:10
已编辑
福州大学 Java
1、实习中的流程异步化方案,基于什么提出,怎么解决2、实习中用到的设计模式3、jwt+threadlocal用来干嘛的,怎么用4、jwt+threadlocal的底层原理,threadlocal的内存泄露问题5、实现一个登录其余登录都退出的方案(1)增加token-version,嵌入jwt的payload中,解析时验证(2)redis维护黑名单列表(3)访问令牌+刷新令牌配合使用6、问:两个方法,都开启了事务,在方法A中,先调用add方法,再调用B的add方法,B的add方法抛异常,结果如何答:这里理解错了,以为是同一个类中的方法的调用,一直说动态代理,结果其实考的是事务传播行为7、介绍操作系统的底层执行过程答:核心是“硬件触发→内核响应→调度执行→上下文切换”,面试官让我下去再了解一下,但是问了AI也是这个答案,没招了8、mysql超大分页,有id,age,name,对age建立索引,order by age,如何优化,先讲清楚原始操作为什么慢,索引是怎么走的答:通过索引查找,再回表,覆盖索引+子查询优化问:优化的原理是怎么样的,索引是怎么走的,覆盖索引是什么,优化方案里哪里用到了覆盖索引9、问:BIO、NIO、AIO的区别答:同步阻塞,同步非阻塞,异步非阻塞问:NIO实现原理是怎么样的答:基于IO多路复用模型问:什么是IO多路复用模型答:八股吟唱问:NIO在操作系统中的执行流程答:创建Selector+注册通道事件→调用select()阻塞监听(内核I/O多路复用)→就绪事件唤醒→遍历通道非阻塞读写(不会)问:channal是如何在可读可写状态时通知selector的答:类似epoll,将就绪的channal写入用户空间,无需轮询确认(说让我再去了解一下)问:channal里面存储的是什么内容答:Channel是双向I/O通道,存放两类关键信息:- 实际I/O数据:待读写的字节数据(通常通过 ByteBuffer 传递,Channel本身不缓存数据,仅负责传输);- 关联元数据:通道对应的文件描述符(FD)、通道状态(打开/关闭)、I/O配置(如阻塞模式、缓冲区大小)、与Selector的注册关系(SelectionKey)。(只说了IO数据,关联元数据没答出来,面试官说再去了解一下,真细啊)10、问:mq的持久化方案了解吗答:懒队列,先存磁盘,需要时再从磁盘获取然后入队11、问:redis如何保证双写一致,讲最终一致性的即可答:延迟双删和cancal组件问:延迟双删如何保证时长答:监控binlog日志文件12、问:如何使用curcor生成需求代码答:一面也问过这个问题,当时面试官说先交给豆包这种语言型AI详细化需求,再交给curcor生成,于是二面我这样子答了,结果面试官问我干嘛要交给豆包,直接交给curcor不就行了,额…没招了还有不少问题,想起来了再补充吧,自从知道开得不高以后,兴致也下降了不少,应该是抬走了~
查看19道真题和解析
点赞 评论 收藏
分享
发面经攒人品
点赞 评论 收藏
分享
评论
13
59
分享

创作者周榜

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