腾讯音乐后端二面
3470
2022.04.14
2022.04.15
发布于 未知归属地

下午 3 点面的腾讯音乐,也是一个小时(果然第一次字节 15min 就很离谱?),面完有点累,这周面得有点多,明天还有两个,躺了一会,还是起来复盘一下。

开始

用的***的面试平台,感觉不同公司面试平台都不一样。
一来面试官先自我介绍了下,然后我再自我介绍了下(都是一个模板,都说烦了)

项目

介绍下一个你觉得比较有挑战的项目?(又是一路套路,需求,架构,难点什么的一条龙,烦躁)

说说你对微服务的理解?(好像每次一旦我说了自己项目是微服务,面试官就会问这句话)

项目的难点?怎么实现的?

你用了消息队列吗?怎么实现生产者消费者模型的?来你来写个伪代码(这里有点傻了,面试第一次写非算法的代码)

怎么控制协程数为 100?

消息到达率怎么计算的?

qps 多少?

接口怎么设计的?为什么这么设计?回滚怎么办?

提供了哪些接口?http 接口吗?用的什么框架?

消息直接打到队列里吗?不做权限校验?

了解哪些分布式的东西?有真正在项目中使用过吗?

你从这个项目中学到了些什么?

go

多进程,多线程,多协程开发的优缺点?

协程调度原理?

了解有栈协程,无栈协程吗?(这个直说不清楚,然后按我的理解说了下)

怎么获取正在运行的协程数?

os

进程调度怎么获取下一个需要运行的程序?(昨晚突然做梦梦见这题,想到了 Linux 使用红黑树维护的,或许面试官想问的就是这个,但是我没想到这一点!!)

说说进程调度的方式?

你刚说了队列,那进程分优先级怎么调度呢?

怎么避免低优先级的进程不会被饿死呢?(扯了下 linux 的完全公平调度)

linux

平时是在 linux 下开发吗?

怎么统计 tcp 连接数?

怎么查看内存使用情况?

怎么根据 pid 获取对应的程序名?

知道怎么在 linux 调整进程优先级吗?(这个真不会)

计网

403 状态码什么意思?

说说 tcp 可靠性原理?

说说 tcp 拥塞控制原理?

说说 tcp 序列号的作用?除了用在拥塞控制,流量控制这些?(我扯了下随机生成序列号,防止中间人攻击)

三握手时,第二次握手丢失了怎么办?

你刚说了半连接队列,那你了解全连接队列吗?

说说 accept 做了什么?

反问

对实习生的培养制度是怎样的?

公司平时有做一些技术交流,技术分享会什么的吗?

最后

腾讯音乐竟然没写算法,我都懵逼了,还心慌了下,结果上手写消费者生产者模型,还好还算熟悉,写的伪代码,解释了下。

复盘了下,发现腾讯真的很重视项目,基本逮着项目问,我都快懵逼了,原来我这垃圾项目还有这么多知识点?(这也说明,其实平时我们做的项目,哪怕是业务,深挖也是能学到很多东西的。。),相对于字节这种专注算法的,还是不太一样的。

我发现我怎么从来没被问过数据库深一点的东西,mvcc,索引,隔离级别?那是啥,就没人问过。。然后 linux, 明明我从来没表现过我会,但是个个都逮着问,而 linux 其实我根本没准备过,都是大一折腾时学的。。

然后我发现面试的确挺看运气,比如 403 这个,老实说我一点都不确定我说得对不对,因为背过好几次了,总记混,随便说了个没权限,下来一查,竟然对了。然后有栈无栈协程和 linux 调整进程优先级这个,我是真不会,第一次遇到这种扯都不知道咋扯的。。

感觉这次没啥好总结的,腾讯深挖项目这些都说过了,我好像也没暴露出啥明显的问题,就这样的,最后问面试官时,他说如果过了,可能会有三面技术面,我还以为下次就 hr 面了呢。还是跪求三面吧 orz

评论 (6)