腾讯视频一面(过)

一共一小时,面完一小时后过

先自我介绍

说我年龄小,聊了一会

介绍项目,问我找工作是 Java ,要非Java 么,我说 go 也可以,我之前做过字节的青训,用go实现抖音demo的api(面试官估计对Java不太懂)

项目相关(全程根据项目提的八股)

  1. 令牌容器的令牌是怎么设计的?为什么能防止超卖?
  2. 比如西安到北京,中间有很多子站,你是怎么判断出来西安到北京真正还剩多少票呢?(这个我没提前准备,说网上有实现好的api可以直接调,我还没看)
  3. 这个系统的框架用的什么(SpringBoot)?有没有部署过,查询过 QPS(看过TPS)?问了我的测试环境(报了一下我的机器配置)?你这个项目的预期 TPS 是多少(我说我没怎么接触过大型项目,就没什么预期)?你有没有看过 12306 真实的 TPS 是多少,在遇到高并发的时候,它是怎么处理的?
  4. 缓存最终一致性,你的项目中的流程介绍一下?那数据是以什么为基准的(MySQL)?你这样每次写数据都要操作数据库,很重,能不能用 Redis(能,Redis 集群部署的话也可以保证较高的可用性)?讲讲 Redis 主从?Redis 哨兵的主哨兵怎么选举的?如果两个候选者的得票相同怎么办(没答上来,我说我猜应该是随机,他说每个候选者会选择一个随机延迟时间,这样很大程度避免了得票再次相同)?
  5. 那你 TPS 这么多,系统是怎么处理这么多的请求呢(IO多路复用)?你知道 IO 多路复用的几种方式?select、poll、epoll的区别?怎么减少用户态缓冲区和内核态缓冲区的切换(零拷贝)?内存映射的底层怎么实现的?
  6. 分库分表怎么实现的(用的 ShardingSphere)?你知道这个工具的底层怎么实现分库分表的么(我说我猜是 hash)?如果有两个分片键的话怎么实现(底层我不太懂,他说要知道工具的底层,才能优化)?

做题

找第 K 大的数(小顶堆维持着前 K 大的数)20min

闲聊

  1. 家是哪的
  2. 对工作地点有没有要求
  3. 能实习多久

反问

  1. 如果过了或者挂了什么时候出结果
  2. 项目组是干嘛的,用什么语言

全部评论
我都过了一个礼拜了还没约二面......
1 回复
分享
发布于 03-25 21:12 上海

相关推荐

4 44 评论
分享
牛客网
牛客企业服务