蔚来 效能研发Java 面经 已OC

这次面试没有八股全是深挖实习项目+算法,可能是发现问完项目已经40min了,可能对牛友们没有很多参考意义但是我还是发一下,毕竟发了许愿蔚来的帖子

面试前闲聊:蔚来没有日常和暑期的概念,转正看部门有没有hc
1自我介绍
2介绍已经实习项目业务,你具体做了什么(简单介绍流程,负责的是回调链路)
3怎么支持的这么高的qps
4这个系统几台机器
然后继续和他扯业务流程细节,和优化的细节点直到面试官明白...他的质疑有点多,幸好这些点我都想过
5有没有办法能更快的通知到用户给用户更好的体验(我们是一个tob而不是toc没法直接接触用户,只能快速把订单处理好然后尽快通知上游来回调)
6你这个身份信息重复刷新问题怎么解决的(用了double check单例模式的思想和lock锁 然后说了我比较倾向与选择定时任务的方案,因为性能更好,但资金开销比较大)
7用锁的方案会不会有大量线程阻塞的问题导致oom(用了trylock锁,阻塞300ms直接就失败返回)
8订单失败了怎么办(定时任务在失败订单表里重新拉)
9会重复拉取订单吗要是重复拉取多支付了咋办(先放redis的set里过滤,然后数据库唯一约束兜底)
10讲讲你们的数据库死锁问题怎么发生的,怎么解决的
11oom是怎么产生的,怎么解决的

手撕:lc381题,LCR 030. O(1) 时间插入、删除和获取随机元素

次日通知面试通过约hr面
后续:hr面完下午oc
全部评论
大佬您好我校招挂了很多中大厂的面试,因为二面针对项目做延伸提问,拷打项目。请问您知道怎么应对这个事情吗? 谢谢。私信请你喝饮料。是增强系统设计知识嘛?
2 回复 分享
发布于 2024-03-10 20:17 黑龙江
兄弟,你这个是啥项目?
点赞 回复 分享
发布于 2024-03-25 00:27 广东
m
点赞 回复 分享
发布于 2024-03-14 15:23 湖北
佬什么时候投的啊
点赞 回复 分享
发布于 2024-03-13 19:11 河南
投了多久面试的
点赞 回复 分享
发布于 2024-03-13 10:05 广西
你这是转正面试,还是实习岗
点赞 回复 分享
发布于 2024-03-03 23:51 上海
大佬是在哪里投的呀
点赞 回复 分享
发布于 2024-03-03 16:10 安徽
不错呀,插播个广告,字节飞书人事最近在急招后端实习岗位,感兴趣的同学可以找我内推呀
点赞 回复 分享
发布于 2024-03-01 20:54 北京
orz
点赞 回复 分享
发布于 2024-03-01 12:42 安徽
跪了🧎
点赞 回复 分享
发布于 2024-02-29 12:44 福建
点赞 回复 分享
发布于 2024-02-29 12:38 上海

相关推荐

04-21 12:53
已编辑
广东药科大学 golang
树根科技的一面-半个小时算法题:删除有序链表的重复元素II原题LC82. 删除排序链表中的重复元素 II  是在牛客的核心代码模式一开始没运行成功后面说了思路 然后就放我过了我在最后说完思路之后调了一下代码之后运行成功完美😍就两道八股然后实习简单问了一下 没什么好回答的我操又是KPI我的面试八股:1,索引是什么?对于索引的理解?底层数据结构是什么我觉得这道题问的很经典但是可能大家回答的大差不差 这里希望大家看可以回答的有章法一点  我这里贴一下我的回答吧面试回答:索引是数据库中用于提高查询效率的数据结构。它类似于书籍中的目录、通过创建索引、数据库可以更快地定位到数据的位置,从而减少全表扫描的时间,显著提高查询性能。索引本质上是一个辅助数据结构、B+树索引是一种多路平衡树、常用于数据库的存储引擎。Innodb数据库默认使用 B+树作为索引。然后来介绍一下B+树索引1. 首先先说一下B+树的特点是什么:B+树的叶子节点存储数据、非叶子节点只存储索引、不存储实际数据、所有数据都集中在叶子节点。而且每个节点里的数据都是根据索引的值来顺序存放的 也就是顺序存储2. 然后呢B+树适合顺序访问及范围查询:B+树的叶子节点之间通过双向链表连接、每个节点都有指向前一个和后一个节点的指针、以及当前的数据。这种结构使得可以顺序访问、从任意一个叶子节点开始、通过双向指针快速地向前或向后访问其他节点访问高效、无需回溯即可遍历更多数据。也可以通过范围查询、可以通过在链表中找到该范围的起始叶子节点、然后顺序地访问链表中的节点。3. 以及最重要的是:B+树的查询性能比较高:由于B+树的结构是平衡的、所有叶子节点都在同一层、这意味着查询数据时、查询的深度通常比较浅(一般在3到4层)、即使数据量达到千万级、最多需要3~4次磁盘I/O操作就能找到目标数据。这极大减少了磁盘访问次数。 4. 还有就是B+树具有稳定的查询性能:由于B+树是平衡的,所有的数据检索操作都有相同的I/O延迟。这使得B+树特别适合用于存储大量数据并且要求稳定查询性能的场景、这也是我们选择B+树作为索引的主要原因  2.面试官问的问题:  面试官问的是:一个表下有多个索引,每一个索引下都是B+树结构、那每一个索引的叶子节点都是存储的实际的数据吗?一开始没明白这个是什么意思、后来面试官提示了一下才明白原来问我的是:聚簇索引和非聚簇索引(二级索引)的区别。参考回答:分为聚簇索引和二级索引回答聚簇索引:叶子节点:存储的是主键值和完整的行记录(即数据行的所有列数据)。非叶子节点:存储的是主键值和指向子节点的指针。非聚簇索引(二级索引):叶子节点:存储的是索引键值和该行的主键值、不存储完整数据。非叶子节点:存储的是索引键值和指向子节点的指针。查询过程:如果查询条件使用了二级索引(非聚簇索引)、但查询的数据既不是主键值也不是二级索引值、则需要通过二级索引查找主键值、然后回表查询实际数据。这样会进行两次B+树扫描、分别查找索引和数据。如果查询的列是主键值和二级索引值、并且这两列都在二级索引中(例如联合索引)、则可以直接在二级索引中查询到所有需要的字段、这时称为覆盖索引、无需回表、查询只需要扫描一次B+树、效率更高。
查看3道真题和解析
点赞 评论 收藏
分享
评论
11
50
分享

创作者周榜

更多
牛客网
牛客企业服务