面试时常一个小时,没有做算法题
问题清单(只展示核心问题,简单八股就不列出来了):
- 你们公司的数据传输平台中,如何做 mysql 到 mysql 的传输?传输链路是如何设计的?
- 如何采集 Mysql 集群的 binlog 日志?有哪些方案?如果我要将 Mysql 的日志同步到其他数据库,有哪些方案?
- 假设 Mysql 里有一张 student 表,表里面有一个 name 字段,student 配置的是 utf-8 编码,但是 student 配置的是 GB2312 的编码,然后用 canal 去订阅,会有什么问题?
- 做 mysql 的数据同步的时候,全量的备份怎么做?比现在表里面已经一亿行的数据了,这个表的数据还在增加,现在我们要把这个数据往外进行全量的同步,应该怎么设计?
- kafka 的一条消息是有大小限制的,当我把 kafka 的消息大小限制调到很大的时候,比如一条消息 10m ,如何避免消费消息的时候撑爆内存出现内存溢出?
- 将一个 Mysql 数据库集群的 binlog 发送到 kafka 中,日志分区路由如何设计?
- 消费主题中的 binlog 的时候,有哪些办法可以加快 binlog 的消费速度?
- 两个 Mysql 集群进行双向同步,如何避免出现消息循环?
总结 面试官问的问题大多都是从业务出发,非常集中,主要问的场景就是问从 Mysql 到 Mysql 的如何进行数据传输,以及使用 Kafka 作为消息中间件的时候的一些生产和消费的问题。 好多问题没答上来不是面试官出题刁钻,存粹是我自己菜,最后也问了一下他们做业务的过程中的一些问题和进展,也算是有收获。
PS:面试官会引导面试者进行回答,非常 Nice
