小红书基础架构部面经
846 字
4 分钟
小红书基础架构部面经
一面(03-02)
- Docker 和 Kubernetes 有什么区别?
- 请介绍 Binlog、Redo Log 和 Undo Log 的作用及写入时机。
- Redo Log 和数据页最终都要写入磁盘,为什么还需要额外写 Redo Log?
- 给定一个正整数 ,将其分解为若干大于 1 的正整数之积,且满足 ,其中 也算一种分解,求共有多少种不同的分解方式。
- 请介绍 Multi-Raft 项目中的 Replica Group。
- 为什么采用 Multi-Raft,而不是让所有数据共用一个 Raft Group?
- Multi-Raft 共识引擎做过哪些性能调优?
- Raft 日志复制发生冲突时,如何快速回溯并定位匹配位置?
- Multi-Raft 系统是否支持日志回收,具体如何实现?
- 请介绍 Raft 协议中的 Leader、Follower 和 Candidate 三种角色。
- 如果同一个 Term 中出现两个 Leader,系统应如何处理?
- Raft 集群发生网络分区后,网络恢复时会经历什么流程?
- Multi-Raft 系统如何实现负载均衡?
二面(03-03)
- 给定平面上的四个点,如何判断它们能否组成一个正方形?
- 给定 个数,如何实现一个既不会溢出、又不会产生精度误差的
avg函数? - 为什么使用增量平均公式仍然不能满足“无精度误差”的要求?
- Raft 日志复制发生冲突时,如何快速回溯?
- 如果 Follower 缺少对应日志,Leader 应如何定位双方日志的冲突位置?
- 日志回溯过程中能否触发新的 Leader 选举?
- 对 Raft 原论文所做的协议改进,应如何论证其正确性?
- Multi-Raft 或 Raft 协议中最核心的性质有哪些?
- Raft 制作 Snapshot 的根本诉求是解决 CPU 使用率过高吗?
- 为什么 Raft 节点重启时需要从第一条日志开始恢复,是因为系统没有快照吗?
- 阅读或了解过哪些开源 Raft 实现?
三面(03-06)
- 请介绍 Redis 的持久化机制。
- 生成 RDB 快照后,Redis 是否可以继续一直写入 AOF?
- 持续写入 AOF 是否会直接导致文件过大?
- C/C++ 中指针和数组有什么区别?
- TCP 端口承担什么作用?
- TCP/UDP 端口号只有 65535 个,当进程数或连接数超过这个数量时,端口是否会不够用?
- 服务器建立大量连接后,内核如何根据收到的数据包找到对应连接,例如多个连接的目标端口都是 80 时如何区分?
- 请介绍项目的完整业务流程。
- 项目中的订单号是如何生成的?
- 项目引入 Redis 是为了解决什么问题?
- 项目引入消息队列是为了解决什么问题?
- 项目是否可以不使用 Redis,去掉后会产生什么影响?
- 项目是否可以不使用消息队列,去掉后会产生什么影响?
- 为什么消息处理需要保持局部顺序性?
- 如果张三的订单消息阻塞,同一队列中后续的李四、王五订单应如何处理?
- 用户尚未成功创建订单时为什么能够点击支付,订单创建与支付流程是否应该串行化?
- 如果购买接口中的下单操作执行失败,后续流程应如何处理?
文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!
相关文章智能推荐
1
字节抖音直播后端面经
面试相关字节跳动抖音直播后端开发面经,终面挂
2
腾讯S3线面经
面试相关腾讯技术提前批 S3线 Go后端开发一面面经,二面拒了
3
遇到的一些八股
面试相关记录遇到的和看到的一些八股
4
总结一些八股答案
面试相关记录总结一些常见的八股面试题答案
5
Redis 分布式锁实现原理
Go源码本文将深入探讨 Golang 中分布式锁的实现原理,涵盖其基本概念、常见实现方式以及在实际应用中的优势和挑战。
随机文章随机推荐


