字节跳动——视频系统架构

一面

2021.9.15

  • 自我介绍
  • 项目基本情况(腾讯的项目)
    • 是嵌入后端?PC客户端。
    • 软件要推广出去,你会怎么办
  • C++
    • C++11新特性?智能指针…
    • 多线程
      • 如何让保证资源同步?答:锁
      • 互斥锁 和 自旋锁
    • lambda表达式,引用 / 赋值
  • 计算机网络
    • 网络7层模型
    • HTTP 1.0 1.1 2.0 3.0 每个版本的区别
      • 长连接 依靠哪个字段实现?Connection:Keep-Alive
      • 多路复用 的实现,二进制分帧没讲
      • 3.0是UDP实现
    • 为啥有TCP层和IP层?答:逐步封装数据。问:这两层的侧重点是?答:TCP层主要是封装端口,IP层主要封装IP地址
    • TCP、UDP,TCP 如何保证可靠,UDP的应用场景
    • 拥塞控制:慢启动、拥塞避免、快速重传、快速恢复…… 拥塞窗口大小
    • IP寻址,IP会变吗,答:不会,说:分情况,IPv4 nat 的时候就会变(逻辑ip与真实ip的转换)
    • 网络编程
      • IO多路复用
  • linux命令
    • 查看 CPU占用情况、网络情况
    • 对文本操作,答:vi、vim,问:比如替换文本……
  • git
    • merge 和 rebase 的区别
    • 代码提交冲突怎么办
  • 算法题(简单)
    • 只有6、9组成的数字,只变换一位,将6变9,或将9变6,使它变最大
    • 接口 int conversion(int num)
    • 说思路:首先考虑正负,正数将第一个出现的6变9,负数将第一个出现的9变6
    • 实现代码

你可能感兴趣的:(笔试/面试,面试)