小红书+开发工程师+(一面/二面)面经

发面经接offer

一面(45分钟)

  1. 找两个数组的交集,要求先排序再遍历。
  2. 手写快速排序算法,包括测试和多种测试用例的考虑。
  3. 介绍五种排序算法的思路及其应用场景。
  4. 解释B+树删除元素后的节点合并问题。
  5. 最左匹配原则:为什么联合索引不遵循最左匹配原则就会失效?

  • 原因:在联合索引的情况下,数据是按照索引的第一列排序,只有第一列数据相同时才会按照第二列排序。因此,查询条件中的各个列必须是联合索引中从最左边开始连续的列。如果仅按照第二列搜索,无法使用索引。

  1. 进程通信方式:共享内存和内存映射的区别。

二面(30分钟)

  1. 高并发技术:讨论了分库分表、集群、缓存和消息队列。
  2. 分库分表:用户ID取模100分成100张表,如果100张表的性能不够,如何不停机分成200张?

  • 解决方案:首先评估需要扩充多少表以满足近期需求。扩展到200张表,按照用户ID取模200,如果结果在0~99则插入旧表,如果在100~199则插入新表。同时开启后台任务,遍历旧表,重新取模200,若结果在0~99则不变,若在100~199则复制到新表并删除旧表数据。

  1. Redis分布式锁挂掉的解决方案:

  • 主从复制或集群模式提供高可用性和容错能力。当主节点故障时,从节点接管工作,避免分布式锁挂掉导致系统不可用。
  • 例如在抢红包时,单独拉一台机器使用,不设置过期时间,活动结束后手动清除。

  1. MySQL性能优化:

  • 索引优化、最左匹配原则、深度分页、主从复制等方法。

全部评论
看看我们呀
点赞 回复 分享
发布于 08-20 23:52 广东
是redstar嘛,小红书正式批是不是还没开
点赞 回复 分享
发布于 08-20 23:58 山西

相关推荐

阿里系夸克 边缘业务大模型实习 450元/天,月薪接近一万 硕士
点赞 评论 收藏
分享
2 6 评论
分享
牛客网
牛客企业服务