[凉经] 希音存储岗位面试复盘

185 天前
 liangkang1436

面试时常一个小时,没有做算法题

问题清单(只展示核心问题,简单八股就不列出来了):

  1. 你们公司的数据传输平台中,如何做 mysql 到 mysql 的传输?传输链路是如何设计的?
  2. 如何采集 Mysql 集群的 binlog 日志?有哪些方案?如果我要将 Mysql 的日志同步到其他数据库,有哪些方案?
  3. 假设 Mysql 里有一张 student 表,表里面有一个 name 字段,student 配置的是 utf-8 编码,但是 student 配置的是 GB2312 的编码,然后用 canal 去订阅,会有什么问题?
  4. 做 mysql 的数据同步的时候,全量的备份怎么做?比现在表里面已经一亿行的数据了,这个表的数据还在增加,现在我们要把这个数据往外进行全量的同步,应该怎么设计?
  5. kafka 的一条消息是有大小限制的,当我把 kafka 的消息大小限制调到很大的时候,比如一条消息 10m ,如何避免消费消息的时候撑爆内存出现内存溢出?
  6. 将一个 Mysql 数据库集群的 binlog 发送到 kafka 中,日志分区路由如何设计?
  7. 消费主题中的 binlog 的时候,有哪些办法可以加快 binlog 的消费速度?
  8. 两个 Mysql 集群进行双向同步,如何避免出现消息循环?

总结 面试官问的问题大多都是从业务出发,非常集中,主要问的场景就是问从 Mysql 到 Mysql 的如何进行数据传输,以及使用 Kafka 作为消息中间件的时候的一些生产和消费的问题。 好多问题没答上来不是面试官出题刁钻,存粹是我自己菜,最后也问了一下他们做业务的过程中的一些问题和进展,也算是有收获。

PS:面试官会引导面试者进行回答,非常 Nice

3454 次点击
所在节点    酷工作
23 条回复
qingyingwan
184 天前
@v2exgo 这不算核心问题,九成靠经验吧。真实业务场景极少遇到的不算核心,只能说刁钻。反正我大厂高并发后端深入技术干过,创业公司全能后端也做过,没遇到过一次。各种成熟的三方工具,比如想的方案厉害多了。深究细节的话,比如你去研究下 mysql 的架构和源码,即使只读懂一百行 C++,也可以直接问倒任何考八股文的面试官。再比如,内存屏障,原子操作,在各种 CPU 架构上如何实现,这种细节随便都可以问倒一批人,我马上查一下就知道了,但我知道这些,也并不比不了解的答主厉害,因为他也会搜索会问 ai 。
v2exgo
183 天前
@qingyingwan 我知道,这个时候,其实你也是要去表达的,你有哪些思路 有哪些地方可以考量的,很多面试官的意思就是看你工作中处理的经验多不多而已,真实的案例中,可能网上已经有成熟的方案跟工具了,而且很有可能你根本就没做过这块,但是不妨碍你表达你可能在这个方案中 你会思考哪些东西,可能哪些点需要你去做抉择
v2exgo
183 天前
@qingyingwan 是的,一个细节可以问死很多人,像原子变量 x86 可以用 lock 汇编命令,底层有 MESI 缓存一致性协议,这里面又有很多细节,以及队列的实现,具体到底层 有大量的细节,很容易问死人

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1117045

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX