4.8快手一面凉经
自我介绍完之后拷打项目:
- 如何保障 Redis 缓存和数据库之间的数据一致性?答了Cache Aside 策略,后面追问了其他机制和删除失败的处理
- Redis 在哪些地方使用了多线程?Redis 单线程处理命令有什么问题/缺点?
- 线程池(ThreadPoolExecutor)的任务执行流程是怎样的?
- 线程池底层如何实现线程复用?
- JDK 源码看过哪些?
- List 和 Set 的区别? 有没有有序的 Set?底层如何保证有序?
- Set 如何保证元素不重复?
- equals() 和 == 的区别?Set 判断重复的逻辑流程是怎样的?
- 解释项目中如何使用二级索引和覆盖索引进行优化。
- InnoDB 为什么选择 B+ 树作为索引结构?
- 为什么 B+ 树“矮胖”能减少磁盘 IO?
- 设计数据库索引时通常考虑哪些原则?
- 了解 AI/大模型吗?
- 目前投了哪些厂,流程都是怎样的?