2025.3.11 搜狐视频

148 阅读3分钟

视频互动业务一面

  1. 自我介绍
  2. slice切片的底层结构是什么样的
  3. map是并发安全的吗?
  4. 除了加锁还有其它方式处理map并发吗
  5. map的扩容有几种方式
  6. 协程的调度原理
  7. defer的执行顺序
  8. 发生了panic,func中的defer语句还会执行吗
  9. 捕获panic的标准写法是怎样
  10. 假设在一个main方法里启动了一个新的goroutine,这个goroutine内部发生了panic,没有进行recover处理,会导致整个进程退出吗?
  11. 那规定一下,main函数在等待这个子协程完成,子协程在执行内部逻辑出现panic,但子协程没有对panic进行捕获,会引起整个进程退出吗?
  12. 平时开发用到channel吗
  13. 带缓冲和无缓冲的在操作上有什么区别
  14. 标准库下sync包下你使用过哪些工具
  15. sync.Once实现原理
  16. MySQL索引的数据结构(后面问题都默认InnoDB引擎)
  17. 工作时遇到过慢查询吗?怎么排查和解决的
  18. 写SQL的时候怎么避免索引失效?索引失效的情况有哪些?
  19. MVCC是怎么实现的
  20. 两个主机A和B,之前没有进行过通信,没发生过网络连接,A发起了一个http请求到B,这个过程中从应用层,传输层到网络层是怎么运作的
  21. https是怎么实现比较可靠的加密通信
  22. 最近一个重点项目你在里头负责的占比大概是多少?
  23. 详细介绍下这个项目,它解决了什么问题,为什么需要它?
  24. 刚提到项目结果中的接口耗时优化,这个是怎么做到的呢
  25. 如果线上服务CPU跑得特别高,或者内存使用得特别高,你会怎么排查和解决
  26. (问一些技术无关的)为什么会投递北京的岗位,之前来过北方吗
  27. 反问

3.14 二面

  1. 自我介绍
  2. 挑一个印象最深的项目展开讲讲
  3. 设计一个搜狐视频评价系统,可以从系统架构设计,中间件选型等讲讲你的想法
    • 这个评论系统在你心中大概会分为几个模块,客户端和它的调用链大概是怎样,它调用其它服务的链路又是怎么样?
    • 假设数据存储层面,现在我们觉得用MySQL的分库分表维护起来有点麻烦,那么你会有什么替代方案
    • 假设现在TiDB的版本升级,我们想用新特性,你会去推动DBA团队升级吗?
    • 升级过程可能需要申请新集群,那么这个切换流程应该怎么保证平稳?
    • 会考虑双写吗?如果不采用,灰度期间,新集群有问题,打到上面的请求造成的增量数据该怎么处理?
  4. 薪资,工作地,跳槽意愿等闲聊
  5. 反问