字节跳动 Tiktok后端实习二面面经

实习拷打
1. 自我介绍
2. 实习介绍(我有三段挨个问了下,然后挑了一段让我仔细讲)
3. 实习业务挑一个最有挑战的介绍
4. 实习中用的TCC事务介绍下
5. 场景题:
设计一个计数系统,比如统计一个文章的点赞量,转发量,收藏数。怎么设计这个系统,怎么能保证高并发的数据查询,怎么能保证系统的健壮性
不需要写出代码,说思路设计

实习拷打了20min 场景拷打了30min 总共50min

#牛客激励计划# #牛客AI配图神器# #我的实习日记#
全部评论
场景题佬觉得这样答会有什么问题吗 考虑高并发使用 redis,选用 set 数据解构,以文章 id 为 key,点赞转发评论收藏为 key,value 为对应的数量。再引入 mq 做为缓冲,将点赞等行为封装成消息,让消费者以自己的消费速率消费,更新 set 集合。
7 回复 分享
发布于 2025-02-13 08:04 江西
场景题我觉得有两种策略吧:一种是将缓存当作主存储,一种是把DB当作主存储,如果把缓存当作主存储,每次操作通过lua脚本执行就可以,redis本来就是单线程,不会有并发问题,然后定时任务落库。如果把DB当作主存储,那就通过MQ同步就可以,至于数据丢失的问题,肯定是允许部分丢失,MQ消费一定批量消费就可以。然后可以通过 JVM 缓存识别热点数据 JVM 中只缓存热点数据,查询是否点赞或者数量先走 JVM 缓存,JVM 中缓存的数量跟redis可以短时间不一致,设置过期时间然后去查就行。佬看看这样好不好
点赞 回复 分享
发布于 2025-05-29 22:00 四川
mark一下场景题
点赞 回复 分享
发布于 2025-03-01 08:28 江苏
又反问环节吗,我二面没反问环节是不是要挂了
点赞 回复 分享
发布于 2025-02-20 16:36 北京
mark一下三月份开面
点赞 回复 分享
发布于 2025-02-13 19:42 广东
佬可以请教一下场景题的思路设计嘛
点赞 回复 分享
发布于 2025-02-13 10:20 浙江

相关推荐

一面 一、数据库相关1. 数据库的索引是什么?为什么使用索引?InnoDB的数据索引基于什么实现?2. B+树和B树的差异?3. B+树查询一次的时间复杂度是多少?4. 哈希数据结构的查询时间复杂度?5. MySQL为什么不使用哈希结构?6. 主键设计为什么一般用自增ID,而非身份证号等业务字段?二、进程、线程、协程相关1. 进程、线程、协程的定义?为什么需要协程?2. 两个线程修改共享变量的线程安全问题如何解决?3. 悲观锁和乐观锁的差别?三、TCP/UDP网络相关1. TCP和UDP的核心区别及应用场景?2. 滑动窗口机制的原理?3. 已发送但未收到ACK的问题如何解决?4. TCP三次握手能否改为两次,加超时重试?四、登录系统设计相关1. 支持30天免登录的数据库表设计(表数量、作用、主键、索引)?2. 前端与客户端交互中如何实现30天免登录?3. 是否了解SSO?4. 用户登录态的设计实现有哪几种?是否了解JWT?五、限流与缓存相关1. 高峰期如何避免流量打挂服务/底层存储(从限流和缓存角度)?2. 是否了解令牌桶和漏桶算法的实现、区别及适用场景?3. 缓存击穿和缓存穿透的区别及解决方法?4. 布隆过滤器的原理及误判解决/降低方法?六、Redis相关1. Redis的基本数据类型有哪些?2. set和zset的区别?3. zset的原理?七、其他技术相关1. 是否了解AI Coding(如OpenAI工具、Spectacle Coding、Web Coding)?Spectacle Coding解决了哪些问题?2. 是否接触过Go语言?
查看26道真题和解析
点赞 评论 收藏
分享
评论
27
115
分享

创作者周榜

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