最近去面试了一家公司,初试聊的很愉快,两个小时之后就通知我初始通过,效率惊人。然后再要求我写三道开放的场景题,可以开卷,作答时间为一天。看的出来,这是一家很讲究效率和看人实际工作能力的公司,毕竟在AI时代,如果再考八股文,考你背的如何,毫无意义。
所以我比较向往,也蛮珍惜,于是周末花了一天的时间进行答题。

这三道题分别是:

1、设计一个分布式ID生成服务,要求:

  • 全局唯一
  • 趋势递增
  • 高可用(容忍节点故障)
  • 高性能(10万QPS以上)
    请给出设计方案,包含核心算法和架构图。

2、有一个订单表(1000万数据),查询缓慢,请:

  • 分析可能的原因和执行计划解读方法
  • 给出索引优化方案
  • 设计分库分表方案(包含路由策略)
  • 如何处理跨分片查询和排序?

3、设计一个支持多租户、多子系统的统一权限管理系统,要求:

  • 如何实现细粒度的数据权限控制(如部门数据隔离)
  • 权限变更时的实时生效方案
  • 权限系统的性能优化策略
  • 画出核心表结构设计并说明关系

具体的解答就不再重复写一遍了,我这里贴个图:

三道场景题