#字节跳动# 一面
一、数据库相关
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语言?
一、数据库相关
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语言?
全部评论
方便问下是哪个岗吗
相关推荐
查看10道真题和解析