首页 > 其他 > 详细

2021.5面试总结

时间:2021-05-14 09:52:22      阅读:16      评论:0      收藏:0      [点我收藏+]

前言

	面试了差不多两个月,从bat到只有一个后端的小公司都面过,对面试常问的问题做一些总结。

八股文

网络、web服务器

  • 网络模型
    osi七层。tcp/ip4层
  • tcp
    三挥四握及其客户端与服务器的状态、排查,拥塞控制,滑动窗口,报文结构,为什么可靠,粘包
  • upd
    一般和tcp做对比,需了解基础
  • http
    http1,http1.1(和tcp keep-alive作区分),http2都需了解,https的ssl协议需了解
  • nginx
    工作模式,一些简单配置,用途,负载均衡策略

数据库(mysql)

  • 索引结构
    为什么使用b+tree,b+tree结构,什么时候会退化,和b tree、skiplist 比较
  • 索引
    类型,使用索引的优劣(就是空间换时间),索引的使用
  • 引擎
    一般就说说myisam与innodb异同。
  • 事务
    概念,隔离级别以及解决的问题,mvcc以及实现,redolog,undolog。分布式事务2PX 3PX
  • 日志
    binlog redolog undolog relaylog 慢日志 概念功能
  • 构架
    分库分表,主从,读写分离
  • 如果问mysql优化 建议从构架设计、数据库设计、sql三个方面说

缓存(redis)

  • 为什么单线程也高效
    数据都在内部里,io多路复用,多线程上下文切换的损耗
  • string hash list set sortset 的底层结构和场景必须清除的了解
    我之前在《redis设计实现》看 list 由linkedlist实现,后来发现之后是升级quicklist节省内存空间。hashmap和skiplist是重点。
  • redis主从过程
    9个过程,百度就有
  • cluster
    槽 ,hash一致性,大key(拆),热key(代码实现负载均衡)
  • 内存淘汰策略
    lru 可对比朴素lru,innodb缓冲池的lru,lfu
  • bitmap hyperloglog
  • 过期键删除
    惰性 定期 结合
  • 缓存与数据库一致性
    双删 延时双删 订阅binlog
  • 缓存穿透雪崩击穿
    提到布隆过滤器就要了解原理(位数组+几个哈希函数)
  • 故障转移
    参考raft

队列

  • 异步 削峰 解耦
  • rabbitmq感觉没啥好说的,kafka问就是不熟0.0

elasticsearch

  • 基础概念
  • 单机数据写入过程
    为何准实时
  • 多机数据读取/写入过程
    协调节点与哈希路由算法
  • 倒排索引
    分词, trim dictionary,跳表,trim index,postling list,fst,bitmap

linux

  • top free 问的多点
  • epoll select poll
  • 协程 上下文切换 用户态内核态

算法

  • 除了一线厂,其实只要了解一下几个排序算法的实现、时间复杂度、优劣就行
  • 面一线厂肯定要刷leetcode,感觉刷个300道差不多,字节的最难

项目

  • 自己的项目一定要有通彻的了解,最好做一下总结,用到的技术不管是不是自己写都要了解。有些场景的设计要思考为什么(没有原因也要想个理由)

其他

  • 如果用了微信小程序就要知道auth2
  • 工作中看中什么? 无非就是平台/工资/项目/团队
  • 关于语言 我写php的,感觉php也没啥好问的,一般也就垃圾回收和swoole,php7特性

后记

  • 我准备面试大概用了一个月不到,后面的边面边看。感觉面一线厂还是不够,面了几次一面挂,菜的离谱。感觉准备面试也是对自己的提升,对业务和技术的理解都提升了很多,比如mysql很多围绕磁盘io,redis很多围绕使用更少内存
  • 本来打算每次面试都更新的,后来觉得重复度很高就没写了
  • 就写了写技术面,hr面。。。我被hrbp挂过两次,就不误人子弟了

2021.5面试总结

原文:https://www.cnblogs.com/wenzaicaicai/p/14766547.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!