虾皮一面

9.23一面
本人投递岗位:后端开发工程师
Base:深圳
面试时长:预计一小时但最后只面了40min(感觉已经挂了)
面试之外: 面试当天会发邮件提醒,不过比较意外的是时间被改到了下午三点,之前约的是下午四点半,在这之前一点没有通知我改时间,好在我那个时间段也是有空的,各位可以注意下。

题目总览: 八股+场景/设计+一道手撕+一道SQL

自我介绍
计网:
- 介绍下TCP
- TCP三次握手& 四次挥手 (感觉是必问的,我看虾皮的面经基本都问了这个)
pring:
- Spring MVC处理流程
Java:
- HashMap源码(底层实现)
- HashMap为什么用红黑树
- HashMap怎么扩容
JVM:
- 做项目遇到过OOM么?
- OOM一般发生放在哪些区域
- 怎么处理OOM
- JVM调优
场景/设计:
- 十亿左右的订单数据,主要有订单ID,用户ID,商品ID三个字段,怎么把它存到MySQL中去
- 分库分表的话那么单表的数据你觉得应该设置多大?
- 你会按照什么逻辑进行分库分表? 
- 假如按照刚才的设计,现在需要查询用户A最近一个月的所有订单,怎么查询?
(这里岔开讲了redis八股,然后又回到了场景设计)
- 在线购物平台,如果出现大规模订单请求,怎么对系统进行优化升级(高并发)
- 怎么确保订单数据不丢失(从前端到后端)

Redis:
- 你平时用redis会用到哪些数据结构
- zset为什么可以排序/实现有序
- 你在项目中怎么用Redis的,具体说明
手撕:
- 二叉树原地转成链表(按照前序遍历的顺序),核心代码模式即可
写完不需要跑样例,只需要说明思路以及时空间复杂度
SQL:
一个employee表,一个department表,要求查询出每个部门工资最高的5个员工。

自我反省: 八股回答地还可以,但是场景设计被拷打烂了,还是缺少相关的积累,虽然目前还没把我挂了,但感觉已经没啥机会了,就当积累经验吧

9.25更新:
不出意外收到感谢信了
#牛客AI配图神器#
#发面经攒人品#
全部评论
都回答上来了嘛?
点赞 回复 分享
发布于 10-05 11:05 北京
窗口函数好难
点赞 回复 分享
发布于 10-02 18:52 江西
南大✌也不要吗 我等下面这个部门的实习岗 感觉gg
点赞 回复 分享
发布于 09-29 13:44 重庆
sql感觉不太好写啊,窗口函数完全不会
点赞 回复 分享
发布于 09-28 15:47 吉林
老哥,有说多久会有消息吗
点赞 回复 分享
发布于 09-24 22:42 广东
接好运
点赞 回复 分享
发布于 09-24 02:36 湖南

相关推荐

数开岗,面的非常愉快一开始先介绍了面试流程1.自我介绍,挑实习经历讲一讲2.代码手撕3.八股考察4.QA环节直接介绍实习经历,没有自我介绍,讲了10分钟开始手撕。1.数据是真实数据吗2.来源系统是同一个系统吗了解了一下主要做的项目数据来源手撕:问了下比较熟的编程语言(java)连续子数组最大和多少知道虾皮是干嘛的吗SQL  求销量表,每个类别下售量TOP10的商品id排名连续怎么做衣服这一品类数据量特别多,导致数据倾斜怎么处理,只针对这一场景处理(二次聚合)给谁加随机值,怎么加,举例还有别的方法吗,只针对这个情景(压缩)你知道spark有做这件事吗(压缩)自己工作中会开这个配置吗spark和flink哪个比较熟,或者其他组件哪个学的好,可以自己挑个熟悉的来讲,还是随便挑个问1.flink状态后端知道哪些2.讲一下checkpoint是在干嘛3.如果状态后端是Rocksdb,checkpoint是怎么存的4.一个算子是怎么知道自己该做checkpoint5.从checkpoint恢复的时候,怎么做的6.一个算子,怎么知道恢复时应该读哪份文件7.看过checkpoint文件里面的结构吗8.有遇到过从checkpoint恢复时失败,是由于算子找不到从哪恢复的问题吗spark方面的问题1.executor, 他的内存分成几部分?堆内堆外内存区别为什么会有堆内堆外内存2.在shuffule的过程中,这几部分是否/如何参与其中3.节点0OM,我有哪些方法或者配置,去优化?最后反问总结,面试官全程态度超好,一直在说别着急,没问题,会有正反馈,体验最好的一次面试
查看29道真题和解析
点赞 评论 收藏
分享
多半凉了, 感觉问的挺细节的, 问零拷贝硬是要我说这个零拷贝的系统调用api是什么, UDP数据包拆分确实没理解透彻, 还有路由器那个问题没搞明白,还有time_wait怎么解决, 真没深入思考过这些啊1.  流式 ETL 管道(无磁盘 IO)是具体怎么做到的?2.  将同步的模式构成异步处理是具体怎么实现的?3.  在一个浏览器中输入一个 URL 之后它还会发生什么一些步骤?4.  Linux 系统如果它的 CPU 百分之百的话怎么去排查?5.  有没有什么办法可以找到它对应的堆栈?6.  MySQL 用什么结构作为索引?7.  知道 TCP 和 UDP 的一些特点嘛?比如它们的应用场景。8.  如果 UDP 第一次发 100 个包,第二次发 10K 的包,那对端会怎么收到这个数据呢?9.  UDP 包的最大传输单元是多少?10.  服务器什么时候会出现那种 TIME_WAIT 呢?11.  是客户端还是服务器会出现这种问题呢?12.  那怎么解决这个问题呢?比如说 TIME_WAIT 的连接特别多这种。13.  那 MSL 一般是多久呢?14.  知道零拷贝吗?15.  有哪些系统函数可以直接利用这个零拷贝技术呢?16.  TCP 的拥塞控制是怎么实现的?是如何做到的?17.  假设有 A、B 两个点,它们之间的 RTT 是 200 毫秒。如果直接从 A 到 B 传输一个小文件,或者有一个中间的 C 节点,先从 A 到 C(RTT 100 毫秒),再从 C 到 B(RTT 100 毫秒)。这两种方式哪种会更快呢?18.  如何保证缓存跟数据库的一致性?一般比如说你就是用来然后怎么这个数的。19.  算法题:最小覆盖子串(LeetCode 76)。20.  (反问环节)有没有要问的?
点赞 评论 收藏
分享
评论
4
19
分享

创作者周榜

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