数字马力面经 - 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?

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

相关推荐

翻笔记翻到的,才想起来忘了发1. 计网 5 层模型 2. 表示层有哪些协议3. 传输层有哪些解析4. TCP 和 UDP 区别5. 说说 TCP 的拥塞控制6. 网络接口层有哪些协议7. 网络层有哪些协议8. HTTP 有哪些请求方式9. GET 和 POST 请求有什么区别10. GET 请求为什么能保证幂等性11. HTTP 和 HTTPS 区别12. 介绍一下虚拟内存13. 进程和线程的区别(要求从 Linux 内核回答)14. 进程之间的通信方式15. 两个不同的宿主机如何进行线程通信?16. 介绍常见排序算法17. 快速排序空间复杂度多少18. 快速排序最差时间复杂度是在什么情况下发生的19. 还有哪些排序算法是基于分治法的?20. 分治法的思想是什么21. 分治法在代码中主要的实现方法是什么22. 写递归有哪些注意事项(要你列出三点)23. 怎么防止递归过深24. 栈溢出一般会在递归多深发生25. 怎么优化栈溢出(递归过深怎么优化)26. Callable 和 Runnable 差异27. 线程池核心参数28. 线程池中怎么设置超时时间?一个线程如果要运行10s,怎么在1s就抛出异常29. 集合讲讲30. LinkedList 和 ArrayList 区别31. 介绍一下反射32. 说说垃圾回收33. 说一下垃圾回收算法34. OOM 怎么排查35. 常见设计模式36. 介绍 AOP37. MyBatis #{} 和 ${} 区别
查看36道真题和解析
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
11-26 12:13
数字马力(郑州) java开发 10k x ( 12+(0—4)) 本科其他
点赞 评论 收藏
分享
评论
9
25
分享
牛客网
牛客企业服务