codelist

记录平时学习的笔记和源码

字节面试后端大纲

后端开发面试考察大纲 一、基础理论 1.1 协议

  • OSI七层模型
  • TCP/IP
  • HTTP/HTTPS 1.2 网络
  • 同步IO、异步IO
  • 阻塞、非阻塞
  • 序列化:protobuf、thrift 1.3 设计模式
  • 设计模式的六大原则
  • 单例模式
  • MVC
  • IOC
  • 微服务 二、数据结构和算法 2.1 数据结构
  • 链表、数组
  • 栈、堆、队列
  • 字典
  • 图 2.2 排序
  • 选择排序
  • 冒泡排序
  • 插入排序
  • 快速排序
  • 归并排序 2.3 算法
  • 分治法
  • 二分查找
  • 深度、广度优先搜索
  • 贪心法 三、操作系统 3.1 Linux相关
  • 常用命令行、shell
  • sed、awk 3.2 进程
  • 进程间通信
  • 线程、协程
  • 死锁 3.3 文件系统 3.4 内存与虚拟内存 四、存储与持久化 4.1 关系型数据库
  • 存储引擎
  • 索引
  • 事务ACID
  • MVCC
  • 锁机制
  • 分布式事务
  • SQL优化 4.2 分布式缓存 4.2.1 Redis
  • 数据类型及底层实现
  • 事件处理器
  • 持久化AOF/RDB
  • 集群与主从模式 4.2.2 Memcache
  • 删除机制
  • 一致性哈希 五、开发语言 5.1 Java/ C++/Go 语法 六、应用技术 6.1 接入层
  • Nginx
  • Apache 6.2 RPC
  • Thrift
  • Grpc
  • Dubbo
  • 服务治理
  • Service mesh 6.3 消息队列
  • RabbitMQ
  • Kafka
  • RocketMq
  • NSQ 七、大数据与搜索引擎 分布式存储HDFS 数据库Hbase 分布式协调Zookeeper 资源调度:Yarn 搜索引擎:ElasticSearch 九、监控与安全 9.1 监控报警 系统监控:iostat、top cpu/ mem/ load/ network Qps Latency SLA