点赞 评论

相关推荐

03-12 20:34
门头沟学院 Java
### 字节生活服务成都一面面经---#### **一、项目相关**1. **第一个项目**     - **登录模块实现**       - 短信登录流程如何设计?验证码如何存储(Redis哈希结构)?       - Token与Cookie的区别?分布式场景下如何解决Session共享问题?       - Token刷新机制如何优化用户体验?     - **秒杀场景设计**       - 如何解决库存超卖问题?(乐观锁、分布式锁)       - 分布式锁的实现原理(Redis Redisson的可重入、超时续约机制)?       - 如何通过消息队列(RabbitMQ + Lua脚本)优化秒杀性能?  2. **第二个项目**     - 如何基于Redis发布订阅实现动态调整?     - 如何采集线程池指标并上传监控中心?  ---#### **二、技术问题**1. **Redis**     - Redis数据结构及适用场景(String、Hash、ZSet等)?     - ZSet如何实现排行榜?Hash如何存储对象?     - Redis分布式锁的底层实现(Redisson的Watch Dog机制)?  2. **MySQL**     - 索引类型(主键索引、联合索引、前缀索引)?     - B+树的结构特点?联合索引的最左匹配原则?     - 事务ACID特性及隔离级别(读未提交、读已提交、可重复读、串行化)?  3. **网络协议**     - HTTP请求报文组成(请求行、请求头、请求体)?     - `Content-Length`的作用及必要性?  ---#### **三、编程题**1. **矩阵中的最大岛屿面积**     - **题目**:给定二进制矩阵,计算由相邻1组成的最大面积。     - **思路**:DFS/BFS遍历,标记已访问节点。  2. **二叉树路径总和**     - **题目**:找出根节点到叶子节点路径和为给定值的所有路径。     - **思路**:递归遍历,维护路径和当前和,叶子节点时校验结果。  ---#### **四、反问环节**1. 部门业务方向?     - 生活服务业务(类似美团,聚焦团购、酒旅等场景的用户体验优化)。  2. 对实习生的要求?     - 基础技术能力、需求落地能力、学习能力。  3. 面试流程?     - 技术面2-3轮 + HR面。  4. 实习时间要求?     - 一周5天,持续半年以上。  ---#### **五、总结建议**- **项目**:需深入细节,如Redis数据结构选型、锁的优化逻辑。  - **基础**:加强MySQL索引原理、HTTP协议细节、Redis底层机制。  - **代码**:注意边界条件(如矩阵越界)、DFS/BFS模板熟练度。
查看16道真题和解析
点赞 评论 收藏
分享
- 飞书,开视频,面试官很友好,主要是让我在做整体流程的介绍,然后问了些常规八股- 第二个手撕在同一个小时的细节上没有完全撕出来,解决了90%,整体思路没问题- 3.6投递 3.20一面 3.24感谢信- 八股基本上都秒了,项目也讲清楚了,sql也都是秒的,也不懂为啥就挂了## 项目- 先那就挑一个你觉得做的最好的一个入仓的离线数仓的项目,具体讲一讲。从业务的背景,它的业务过程,你在其中做了什么内容,最后取得了什么成果这种思路展开讲一下。- 那你从业务的视角就是说是他比如说你的你的业务过程到底有哪些业务过程它有哪些数据,然后你怎么去做建模的,然后这种方式再细一下说一下。- 这个指标的话,其实你做了多少,做了哪些表,然后他的力度是什么?然后又有什么维度呢?- 在做这个指标的时候,你这整个的数据链路是啥?从离线到从是从线上到离线,然后再到你的指标,最后是大盘这种(大盘应该指的就是可视化)  - 我应该多讲一下数据通路中用到的数据同步工具- 你设计的DWD、DWS它的粒度是什么?都有哪些维度呢?- 你在做这个数仓其实是要类数仓的这样一个项目的话。那其实你觉得这里面最最难的点是在什么- 你现在的话其实更多的是接业务方需求,比如说业务方来一个需求做一个表,来个需求做一个表,那你的数据你的表就会越来越多越来越多。这跟是数仓的这种兼容和扩展影响不是很大吗?你这个是怎么考虑的?- 数据倾斜问题## 八股- 数仓建模的一般流程你知道吗?- 刚才提到你说总线矩阵,那总线矩阵的就是说横坐横轴跟纵轴都是什么?- ODS、DWD、DWS它的定位- ODS里面已经有了这个数据,为什么不直接从ODS里面去取还要再新建一个DWD呢?- Spark里面就是说它的一个优化的方法,你这边都用过哪些?- 小表join大表的话,是小表在前还是大表在前?- MR中MapTask个数和ReduceTask个数由什么决定?- Row number和rank的区别- avg函数他在算这种平均值的时候会忽略null吗?  - **`AVG` 函数的分母是有效数值的数量**## 手撕- SQL:学生成绩平均值问题和>60的问题,很简单- SQL:直播间同一天同一个小时内最大在线人数
MinJerous:有同学已经接了offer,不需要后续推进了。或者没hc了,还有就是很少,需要排序进三面(ld)
查看20道真题和解析
点赞 评论 收藏
分享
 全程1h,项目穿插八股,最后手撕        1. 介绍项目    2. 项目亮点?(线程间交互的痛点,跨线程任务队列优化)    3. 你还知道哪些线程间通信的方式?(只答了共享内存)    4. TCP keep-alive机制    5. 增量式HTTP模块如何实现的?    6. 那再讲讲对HTTP协议,有什么认识?(答了Cookie和Session,项目2用到)    7. 项目2中的多用户高并发是如何实现的?    8. 你觉得解决多用户高并发场景的痛点是什么?(答了负载均衡,分布式,不熟悉)    9. 讲讲STL你最熟悉的地方(vector、string、迭代器思想)    10. 讲一下vector底层的扩容机制    11. 数组和链表访问元素的区别?新增和删除呢?    12. MySQL B+树,如何访问数据?    13. 讲到排序算法,最熟悉哪一个?(快排、归排、堆排序、冒泡 )    15. 哪些是稳定的?哪些是不稳定的?    14. 拷打 快排:实现原理?什么情况下不适合用快排?用哪种替代合适?    15. C++ std::sort底层实现【手撕】    1. SQL:一个商品数量表,[id, quantity],求相同id商品的数量和(SQL太久没写,只讲了思路:先group by id,再用SUM聚合)        2. 给一个正整数数组和一个target,求 和大于等于target的最短子数组的长度。拓展:如果有负数呢?
查看18道真题和解析
点赞 评论 收藏
分享
牛客网
牛客企业服务