大纲

恭喜你发现了新大陆

1、操作系统

1.1、Linux

计算机原理-面试之-Linux 优化
计算机原理-面试之-Linux shell

2、网络

  • 00-网络 基础
    • OSI 七层协议和四层协议
    • 常见网络协议
  • 02-网络 网络层
    • IPv4、IPv6、网络的分类、子网、子网掩码、网关
    • 如何获取客户端真实 IP
    • ARP
    • NAT
    • ICMP
    • PING 命令的作用是什么?
  • 03-网络 TCP UDP
    • 三次握手、四次挥手、序列号和确认、校验和、流量控制(滑动窗口)、拥塞控制(慢启动、拥塞避免、超时重传、快速重传、快速恢复)
    • ARQ、停止等待、连续ARQ
    • TCP 如何保证传输的可靠性?
    • 超时重传如何实现?超时重传时间怎么确定?
    • 第 2 次握手传回了 ACK,为什么还要传回 SYN
    • 三次握手过程中可以携带数据吗
    • 初始序列号 seq 是什么
    • 为什么建立连接协议是三次握手,而关闭连接却是四次握手
    • TCP 三次握手为什么不能是两次
    • 为什么 TIME_WAIT 状态还需要等 2MSL(Maximum Segment Life,报文段最大生存时间) 后才能返回到 CLOSED 状态
    • 什么是半连接队列和全连接队列?
    • TCP 与 UDP 的区别(重要)
    • TCP 和 UDP 的应用场景
    • UDP:面向流、无连接。
  • 04-网络 应用层 HTTP、websocket
  • 05-网络 其他
  • 10-从输入址到获得页面的过程

3、开发语言类

Python

前端

前端-Vue

4、组件类

4.1、MySQL

  • 01-MySQL-基础

    • MySQL 的 change buffer 是什么
    • 备份
    • 详细说一下一条 MySQL 语句执行的步骤
  • 02-MySQL-字段

  • 02-MySQL-存储引擎

    • MyISAM 和 InnoDB 的区别
  • 02-MySQL-日志

    • MySQL 有哪些日志
    • redolog,原因,二段提交
    • undolog,MVCC
    • binlog,主从
  • 02-MySQL-索引

    • 原理:B+Tree
    • 类型
    • 不能命中索引的情况
    • 索引的原则
    • 优化
    • 最左前缀
  • 03-MySQL-优化

    • 索引
    • 读写分离:主备延迟、解决、
    • 主从复制:
    • 分库分表:原因、问题
  • 03-MySQL-explain

  • 事务

    • ACID
    • 隔离级别
    • 并发问题
  • MVCC:版本链、读视图

  • 锁:种类:读锁、写锁、行锁、表锁、乐观锁、悲观锁、意向读锁、意向写锁

    • 记录锁、间隙锁、临键锁

4.2、Redis

知识点:

  • 存储机制
    • RDB
    • AOF
    • AOF 重写
  • 数据类型
  • 使用场景
  • 过期策略 + 淘汰策略
  • 单线程
  • Redis 集群
  • 分布式锁 and zookeeper
  • 数据库和缓存一致性
  • 缓存雪崩 + 缓存穿透 + 缓存预热

4.3、Kafka

4.5、docker + k8s

5、其他

5.1、安全

  • 安全

  • OWASP TOP 10

  • 越权

  • SQL 注入

  • XSS

  • CSRF

  • DDos

5.2、分布式


大纲
https://flepeng.github.io/interview-大纲/
作者
Lepeng
发布于
2022年2月2日
许可协议