哈饥米腾讯音乐内容业务线

存储与同步#

  1. 数据从 MySQL 同步到 ES 的方法。
  2. binlog 设计之初的意义。

缓存与事务#

  1. Cache Aside 存在的问题,怎么解决?延迟双删。
  2. 项目中的分布式事务问题,怎么解决?

Go 与 Java#

  1. 对比 Go 和 Java 的 Map。
  2. 为什么 Go 需要红黑树?Go 怎么防止哈希攻击?
  3. 对比 Go 和 Java 的 GC。
  4. 混合写屏障是怎么感知到引用的新增和接触的?
  5. 对比 Go 和 Java 的协程/线程。

MySQL#

  1. MySQL 聚簇索引和非聚簇索引,为什么非聚簇叶子节点中存在全部记录?
  2. B+ 树结构,如果是联合索引 abc,每个非叶子节点的结构什么样?
  3. Explain 分析 SQL,哪些字段要重点看?

ES#

  1. ES 有三个数据节点,某个索引有三个分片,在不同的三个节点上。同一个索引存放的是一些纯数字的 ID,比较简单。如果去 ES 倒叙查 Top100,这个请求发给 ES 后,大概的简单实现原理是什么?基于你的基础知识分析下。

框架与中间件#

  1. Spring 怎么解决循环依赖?
  2. Kafka 什么情况下会 rebalance?

手撕#

  1. 122。