猿辅导、贝壳面经

文章目录

    • 猿辅导服务端开发
      • 一面
      • 二面
    • 贝壳安全研发
      • 一面
      • 二面
      • 三面
      • hr面

猿辅导本来觉得凉了,没心思写面经。今天竟然收到二面通过的短信了。。。那就写一下吧,不过时间有点久了,很多问题已经不记得了。

猿辅导服务端开发

一面

  1. c++的内存分布,哪些区域是无法通过指针访问的,堆的内存碎片怎么处理。
  2. 面向对象和面向过程。
  3. 7层协议讲一下。
  4. tcp和udp区别,适用场景。
  5. 数据库四大特性什么的,具体忘了,最后让写了一个sql语句,设计表结构。
  6. 手撕代码,判断一棵树是不是二叉搜索树。三分钟撕完,但是可以优化,面试官说你可以不要写这么快,想想怎么优化,然后跟我提了可以优化的点。
  7. 手撕代码,字符串形式自定义进制大数相加,也很快就写完了,但是没有考虑到超高进制下两个一位相加也可能溢出。
    打个比方,999999999进制,Z指代999999998,则Z+Z就有可能溢出。

二面

  1. 讲一讲同步和异步。
  2. select、poll、epoll。
  3. 异步跟I/O多路复用差别,你觉得最本质的区别是什么,详细说。
  4. 网络编程,socket-bind-accept等等,每一步具体是在干嘛?不bind可以对套接字进行操作吗。
  5. BLocking I/O 和 Non-Blocking I/O。
  6. 每层都有哪些网络协议,说一说。
  7. http各版本差别,get/post差别。
  8. 数据库聚合索引。
  9. 手撕代码,链表每隔k个反转。写是写出来了,但是什么边界都没考虑完全。写完直接说今天就到这里吧,然后视频马上挂了。

猿辅导问的不止这些问题,很多我都忘了,二面网络挖的有点深,不过还好答上来了。主要是代码没撕好,没想到竟然能过。

贝壳安全研发

一面

我面的是安全研发,但是一面面试官是做攻防和渗透的。各种问我漏洞,攻击,爬虫反爬,加解密,证书等,但我都不会啊。。。
最后问了一个sql注入相关问题,正好我研究过这个问题,还写了个博客。然后他这轮就先放我过去了,说之后换个研发面试官来面我。

二面

贝壳企业安全老大面我,后来发现他跟我们老大以前是同事,很熟。。。我们组很多人他都认识。
然后就是聊项目,问我实习做了这些项目,各花了多久。
问我实习那边是没hc吗,为什么来面贝壳。我说我投贝壳之前不知道能不能转正,后来知道可以转正了,但是贝壳这边笔试过了,笔试不能白做,就来面一下。
之后跟我介绍贝壳安全的组织架构,之后想要开展的项目方向等,发现跟我目前做的方向高度吻合。。。

三面

贝壳三面本来是hr面,但是我一面面的方向不对,就给我换了个研发补一下一面,这一面比较硬核,应该是我目前面过的最难的一面。

  1. 讲讲负载均衡算法。一致性哈希和轮训负载均衡、加权随机有什么本质上的区别,什么场景必须使用一致性哈希。
  2. 分布式集群下的session同步要怎么做,给个方案。
  3. 构建高可用分布式系统,要从哪些方面考虑,分别要怎么做。
  4. 数据库索引存储结构,B+树叶子上存的是什么。
  5. 查询语句速度很慢要怎么排查,为什么不适合对字符串列建立索引。
  6. 对主键, unique key, 普通键建立索引,在查询时,底层机制会有什么不同。
  7. 浏览器输入www.ke.com,完整过程。
    我刚开始只说了 url -> dns -> 递归迭代查询 -> ip:port -> arp -> mac -> http -> tcp -> 最后返回html。
    然后他问,发送一个http请求后,服务端发生了什么,为什么有了ip:port就能渲染一个页面或者拿到数据。
    然后把几乎能用上的所有组件都说了,nginx,mysql,redis,kafka等等。我头一次遇到问这么详细的。。。
  8. 整个网页访问过程,性能的瓶颈最可能在哪。
  9. 数据库大量查询插入请求并发的情况下,如何提升性能。

hr面

常规hr面问题,聊的还挺开心的。

你可能感兴趣的:(面经)