7.27 字节跳动二面:番茄小说

时间:2022年7月27日 下午4点
部门:番茄小说
职位:后端
面试时长:1小时
第一部分:项目
  1. 介绍一下项目
  2. 说一下站内异步通知怎么实现的?
  3. 用户登陆之后怎么能看到站内通知呢?
  4. 说一下 Kafka 和 Rocket MQ 的区别
  5. 为什么Kafka具有高吞吐和低延迟的特性?
  6. 在Topic不断增加的情况下,Kafka和Rocket MQ的性能比较
  7. Kafka和Rocket MQ如何实现顺序消费?
  8. 介绍一下两级缓存怎么实现的?
  9. 缓存击穿问题怎么解决?
  10. 除了互斥锁解决缓存击穿问题,还有没有其他尽可能不影响性能的解决方案?
第二部分:常规八股
  1. 说一下Java线程有哪些状态?
  2. Java线程的状态之间怎么切换?
  3. sleep函数和wait函数的区别?
  4. String是基本类型么?它具有什么样的特点?
  5. String如何实现不可变的?
  6. String实现不可变的主要目的有哪些?
  7. String有lenth方法么?数组有么?(这里答错了,我说String有,数组也有,结果面试官笑了,后来一想数组的length是属性....)
  8. 一个字面量和一个new出来的字符串,两者引用地址相同么?为什么?
  9. MySQL执行一个SQL语句的具体过程?
  10. MySQL事务的特性
  11. MySQL事务的隔离性如何实现?
  12. MySQL事务是如何解决幻读问题的?
  13. MySQL事务的默认隔离级别?(我回答是RR,面试官说是RC....)
  14. 场景题:三个线程如何交替执行?(这个问题面试官一直问还有实现方案么?我一共说了4种)
第三部分:算法题目
  1. 打家劫舍III
  2. 大数相乘
总结:总体回答还算可以,已经收到三面通知。大家有什么问题可以在评论区讨论哈。


#字节跳动校招提前批##面试##面经##二面#
全部评论
大佬 有三面的面经吗
点赞 回复 分享
发布于 2022-08-29 19:06 河北
老哥,过了么
点赞 回复 分享
发布于 2022-08-05 22:23
老哥,第一部分第三题怎么回答的
点赞 回复 分享
发布于 2022-08-01 03:30
老哥三面了吗
点赞 回复 分享
发布于 2022-07-31 21:25
快冲网易游戏(互娱)2023届校招! 专属内推码:9cREOy 快来加入我们吧!网申链接:https://game.campus.163.com/position
点赞 回复 分享
发布于 2022-07-31 14:01
好难啊 不敢投了
点赞 回复 分享
发布于 2022-07-30 00:06
考虑小红书吗,我主页有内推帖子
点赞 回复 分享
发布于 2022-07-29 11:58
楼主,有没有试一试荣耀啊,秋招正式批次刚刚开始,八月开始简历筛选,找我内推,更快简历筛选,内推码:yuhvad 网址https://career.hihonor.com/SU60eea919bef57c1023f6fe78/pb/school.html
点赞 回复 分享
发布于 2022-07-29 01:38
老哥14题除了condition和信号量 还有什么方法呀
点赞 回复 分享
发布于 2022-07-28 11:00
MYSQL默认不是RR吗
点赞 回复 分享
发布于 2022-07-28 09:21
这是真难啊……楼主真强
点赞 回复 分享
发布于 2022-07-27 23:19
base哪里
点赞 回复 分享
发布于 2022-07-27 23:00

相关推荐

查看20道真题和解析
点赞 评论 收藏
分享
鼠鼠第一次投大厂面试,写面经攒人品:1. 个人介绍(2min)2. 挖项目(我跟后端相关的项目似乎只有抖音商城(字节跳动青训营),他一直挖我这个项目)3. 服务是怎么被发现的?(微服务)4. 假如你这个服务要更新,要更平滑,不让用户感到延迟,你会怎么做?- 维护两套环境(蓝:当前生产环境;绿:新版本环境)。- 新版本在绿环境测试通过后,切换流量到绿环境,蓝环境作为回滚备用。- 优点:零停机,用户无感知切换。5. 你输入一个url的处理过程6. 然后就开始写题了,面试官直接口述,输入一个数字,输出下一个最小的比这个数大的数字(重新排列)leetcode类似的题目是:[556. 下一个更大元素 III](******************************************************)这道题手撕还是相当紧张的,给我撕出来了7. 数据库事务是什么8. mvcc是什么,怎么实现的?9. 场景题,给你一个番茄小说的书,有十万订阅,如何快而准确的通知到所有订阅的人更新了(这里要求你去用具体的实现)我这里寄了,后面复盘的时候,应该是使用feed流,这个是用ai写的答案:- 推模式 (Fanout-On-Write/Writes):- **操作时机:** 当关键事件(如新章节发布)发生时**立即**执行。- **目标用户:** **核心活跃粉丝(数量相对较小)**。- **动作:** 将事件**直接写入**这些目标粉丝的个人 **收件箱(Inbox Feed)**(一个按时间排序的数据存储)。用户访问自己的 Feed 流时,直接从这个收件箱拉取即可,延迟极低。- 拉模式 (Fanout-On-Read):- **操作时机:** 当用户主动请求访问 Feed 流时执行。- **目标用户:** **非核心粉丝(长尾粉丝,数量大)** 或 触发推模式的粉丝,在访问 Feed 时可能需要拉取更长时间范围内的数据。- **动作:** 后端服务在用户请求时,**实时聚合**用户所关注对象(收藏的书籍)的 **发件箱(Outbox Feed)** 数据(包含所有发布事件),按时间排序后返回给用户。这需要访问多个发件箱(每个收藏的书一本)并聚合。- **「推拉结合」的关键:** **合理区分「核心粉丝」与「长尾粉丝」**,只对核心粉丝进行实时写入。**关键组件与流程详解:**1. **事件源 (Event Source):**- **新章节发布:** 最核心的事件源。携带 `bookId`, `chapterId`, `publishTimestamp`。- **粉丝关系变更:** 用户收藏 (`favor`) 或取消收藏 (`unfavor`) 一本书。携带 `userId`, `bookId`, `action`, `timestamp`。2. **事件总线 (Event Bus):**- 使用高吞吐、可靠的消息队列如 Kafka/Pulsar。接收上述事件并进行持久化,供下游消费者订阅。后面是就是针对十万用户的进行**精准界定“核心活跃粉丝” (`HotFanCache`):**,查询优化,**高性能存储与分片:**10. 反问,问了业务是什么,技术栈是什么,然后和面试官聊的蛮开心的,面试官夸了基础好,知道稳了10min之后,hr通知2面.1面成功.
番茄小说二面3人在聊
点赞 评论 收藏
分享
评论
11
59
分享

创作者周榜

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